Specifies parameters for the compute context, such as pipe and queue index, ring buffer size, and flags.
typedef struct D3D11_COMPUTE_CONTEXT_DESC {
UINT CreateFlags;
UINT RingBufferSizeBytes;
UINT PipeIndex;
UINT QueueIndex;
D3D11X_COMPUTE_CONTEXT_PRIORITY InitialPriority;
UINT SegmentSizeBytes;
UINT ScratchMemorySizeBytes;
} D3D11_COMPUTE_CONTEXT_DESC;
CreateFlags
Reserved for future use; must be 0.
RingBufferSizeBytes
The size of the ring buffer, in bytes. Specify 0 for the default value (512 KB). Non-zero values must be a multiple of 64 KB, and must be at least 64 KB.
PipeIndex
The index of the pipe. Can be either 0 or 1. Specify 0 to use the low priority compute pipe, or 1 to use the high priority compute pipe.
QueueIndex
The index of the queue. For pipe 0, this can be 0-5. For pipe 1, this can be 0-2.
InitialPriority
Initial priority value for the queue, as a D3D11X_COMPUTE_CONTEXT_PRIORITY enumeration constant. Priority affects scheduling amongst queues within a single pipe. For pipe 1, the priority must be less than or equal to D3D11X_COMPUTE_CONTEXT_PRIORITY_HIGHER.
SegmentSizeBytes
The segment size, in bytes. Specify 0 for the default value (8 KB). Non-zero values must be a multiple of 4 bytes, and must be at least 4 KB.
ScratchMemorySizeBytes
The scratch memory size, in bytes. This memory is used for shader register spilling.
This structure is passed into ID3D11DeviceX::CreateComputeContextX.
This structure is used to specify parameters for the compute context, such as pipe and queue index, ring buffer size, and flags. A title can create more than one compute context at a time, but they have to submit to different hardware queues. A title can adjust priority for each compute context independently, and change a context’s priority dynamically. See also ID3D11ComputeContextX::SetComputeShaderLimits.
Header: Declared in d3d11_x.h.