Version: Unity 6.5 (6000.5)
LanguageEnglish
  • C#

SystemInfo.supportsAsyncCompute

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public static bool supportsAsyncCompute;

Description

Returns true when the platform supports asynchronous compute queues and false if otherwise.

Async compute queues let Unity submit compute shader work separately from graphics work, so the GPU can run both at the same time. This property is true only where the graphics API exposes async compute queues and Unity implements support for them.

Unity implements async compute for DirectX 12. Platforms that use DirectX 11, Vulkan, Metal, OpenGL ES, or WebGPU return false. For information about support on console platforms, refer to the platform-specific documentation.

Support depends on both the graphics API and the platform, and it changes between Unity versions. Query this property at runtime rather than assuming a fixed set of platforms.

When this property is true, use Graphics.ExecuteCommandBufferAsync to submit a CommandBuffer that dispatches a ComputeShader on an async queue. In a custom render pipeline, use ScriptableRenderContext.ExecuteCommandBufferAsync instead. Pass data to that work with a ComputeBuffer.