D3D12_FEATURE_DATA_D3D12_OPTIONS1 구조체(d3d12.h)
HLSL 6.0 웨이브 작업에 대한 지원 수준을 설명합니다.
구문
typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS1 {
BOOL WaveOps;
UINT WaveLaneCountMin;
UINT WaveLaneCountMax;
UINT TotalLaneCount;
BOOL ExpandedComputeResourceStates;
BOOL Int64ShaderOps;
} D3D12_FEATURE_DATA_D3D12_OPTIONS1;
멤버
WaveOps
True이면 드라이버가 HLSL 6.0 웨이브 작업을 지원합니다.
WaveLaneCountMin
이 구현에서 지원할 수 있는 SIMD 웨이브의 기준선 수를 지정합니다. 이 용어는 "웨이브프론트 크기" 또는 "워프 너비"라고도 합니다. 현재 앱은 워크로드 크기 조정에 이 최소값만 사용해야 합니다.
WaveLaneCountMax
이 구현에서 지원할 수 있는 SIMD 웨이브의 최대 레인 수를 지정합니다.
TotalLaneCount
하드웨어의 총 SIMD 레인 수를 지정합니다.
ExpandedComputeResourceStates
컴퓨팅 명령 목록에서 CBV 및 간접 인수 상태의 전환이 가능했음을 나타냅니다. CheckFeatureSupport가 성공하면 이 값은 항상 true가 됩니다.
Int64ShaderOps
64비트 정수 작업이 지원됨을 나타냅니다.
설명
"lane"은 단일 실행 스레드입니다. 버전 6.0 이전의 셰이더 모델은 언어 수준에서 레인 중 하나만 노출하므로 병렬 SIMD 처리를 구현까지 완전히 확장되도록 둡니다.
"웨이브"는 프로세서에서 동시에 실행되는 레인(스레드)의 집합입니다. 병렬로 실행되도록 보장하기 위해 명시적 배리어가 필요하지 않습니다. 비슷한 개념으로는 "warp" 및 "wavefront"가 있습니다.
이 구조체는 D3D12_FEATURE D3D12_FEATURE_D3D12_OPTIONS1 멤버와 함께 사용됩니다.
요구 사항
머리글 | d3d12.h |