원문 캡처 · devblogs.microsoft.com
원문 캡처 · devblogs.microsoft.com

마이크로소프트가 DirectX Agility SDK 1.620 정식판과 1.722 프리뷰를 공개했다. 1.620은 DirectX Dump Files와 Fence Barriers Tier 1 등을 정식 제공하고, 1.722 프리뷰는 세밀하고 동적인 장면을 위한 레이트레이싱 기능을 추가한다.

두 버전은 Agility SDK 다운로드 페이지에서 받을 수 있다. 이번 기능은 출시일부터 PIX를 지원하며, 자세한 내용은 PIX 릴리스 안내에서 확인할 수 있다.

1.620에는 부분 그래픽 프로그램(Partial Graphics Programs), 명시적 PSDB 지정, SODB 열거 및 트랜잭션 API, 직렬화된 루트 서명 지원이 포함됐다. 부분 그래픽 프로그램은 파이프라인 변형 간 컴파일된 프로그램 일부를 재사용해 다운로드 크기와 컴파일 시간을 줄일 수 있다. 자세한 내용은 관련 안내를 참고할 수 있다. Xbox에서 타이틀당 여러 SODB·PSDB를 지원하는 기능은 아직 제공되지 않는다.

명령 제출과 리소스 관리에는 Fence Barriers Tier 1, 비동기 명령 목록 일괄 처리 API, 캐스트 가능한 형식 조회, GUID 텍스처 레이아웃이 추가됐다. Fence Barriers Tier 1은 정식 게임에서 사용할 수 있지만, 교차 큐 대기를 지원하는 Tier 2는 당분간 프리뷰 SDK에만 제공된다. 일괄 처리 API는 서로 독립적인 복사 작업 등을 GPU가 겹쳐 실행할 수 있도록 표현하며, 새 명령을 구형 하드웨어에서 에뮬레이션하는 대체 레이어도 선택적으로 사용할 수 있다. 자세한 설명은 대체 레이어 안내와 명세에서 확인할 수 있다.

CheckFeatureSupport1은 애플리케이션이 SDK 버전을 지정해 기능 수준을 조회하도록 한다. 이 방식은 지정한 버전까지 정의된 수준으로 보고 값을 제한해, 더 새로운 런타임의 기능 수준을 애플리케이션이 예상하지 못하는 문제를 피하도록 설계됐다. 명세도 공개됐다. 캐스트 가능한 형식 조회는 리소스 생성 시 기록된 형식 목록을 확인하는 기능이며, 새로운 형식 캐스팅 권한을 부여하지는 않는다. 관련 명세와 GUID 텍스처 레이아웃 명세에서 세부 사항을 볼 수 있다.

머신러닝 관련 기능으로는 MLIR 프로그램을 D3D12 상태 객체 안에서 실행 가능한 프로그램으로 컴파일하는 DirectX Compute Graph Compiler 런타임 인터페이스가 추가됐다. DXCGC가 그래프 표현을 최적화하고 드라이버가 최종 하드웨어 코드를 생성한다. 명세를 참고할 수 있다. 비디오 기능에는 전용 비디오 처리 하드웨어를 이용하는 VPblit 3DLUT와, 인코딩 완료 메타데이터를 CPU에서 동기적으로 해석하는 기능이 들어갔다. CPU 메타데이터 해석은 코덱·구성별 지원 여부를 D3D12_FEATURE_VIDEO_ENCODER_CPU_RESOLVE로 조회해야 하며, 보호된 리소스 세션에서는 사용할 수 없다. 3D LUT 명세와 CPU 메타데이터 해석 명세에 세부 내용이 있다.

GPU 진단 기능인 DirectX Dump Files, 드라이버 보고 메시지, 확장 PIX 마커도 1.620 정식판에 포함됐다. 드라이버 보고 메시지는 드라이버가 자체 검사에서 찾은 문제를 ID3D12InfoQueue로 전달하는 표준 통로다. 사용하려면 디버그 레이어를 켜고 장치 생성 전에 ID3D12Debug7::SetEnableDriverReportedMessages(TRUE)를 호출해야 하며, 실제 메시지 제공 여부는 드라이버 지원에 달려 있다. DirectX Dump Files 안내에서 관련 내용을 확인할 수 있다.

1.722 프리뷰에는 셰이더 표시 디스크립터 힙 사이의 범위 복사를 명령 목록에서 수행하는 GPU Timeline CopyDescriptors가 추가됐다. 이 기능은 리소스 바인딩 Tier 4가 필요하다. 레이트레이싱에는 Clustered Geometry, Partitioned Top-Level Acceleration Structures, 간접 가속 구조 빌드가 들어갔다. 엔진은 이를 통해 지오메트리 클러스터를 재사용하고, 바뀌지 않은 장면 구획을 유지하며, GPU 메모리의 빌드 입력을 사용할 수 있다. 레이트레이싱 업데이트 안내와 DirectX Raytracing 명세를 참고할 수 있다.

셰이더 모델 6.10은 이번에도 프리뷰 상태이며, 마이크로소프트는 12월 초 출시 예정인 Agility SDK 1.621 정식판에 포함할 계획이라고 밝혔다.

드라이버 제공처는 다음과 같다.

기능별 하드웨어 지원은 다음과 같다. ‘예정’은 향후 드라이버 지원 계획이며, ‘—’는 현재 발표된 지원이 없다는 뜻이다.

릴리스·기능AMDIntelNVIDIAQualcomm
1.620 정식판: Partial Graphics ProgramsRadeon RX 7000·9000 시리즈향후 드라이버 예정향후 드라이버 예정향후 드라이버 예정
1.620 정식판: Batched Asynchronous Command List APIsRadeon RX 7000·9000 시리즈Arc B-Series Graphics, Core Ultra 프로세서(200V 시리즈·Series 3), Core 프로세서모든 RTX GPU향후 드라이버 예정
1.620 정식판: GUID Texture LayoutRadeon RX 7000·9000 시리즈Arc B-Series Graphics, Core Ultra 프로세서(200V 시리즈·Series 3), Core 프로세서(Series 3)모든 RTX GPU—
1.620 정식판: Fence Barriers Tier 1Radeon RX 7000·9000 시리즈Arc B-Series Graphics, Core Ultra 프로세서(200V 시리즈·Series 3), Core 프로세서GeForce RTX 30 시리즈(Ampere) 이상—
1.620 정식판: MLIR용 DXCGC 런타임 인터페이스Radeon RX 9000 시리즈—Turing 이상 GPU향후 드라이버 예정
1.620 정식판: VPblit 3DLUTRadeon RX 9000 시리즈Core Ultra 프로세서(200V 시리즈·Series 3)——
1.620 정식판: Video Encode CPU Metadata ResolutionRadeon RX 7000·9000 시리즈Arc B-Series Graphics, Core Ultra 프로세서(Series 1·200V·200S·200H·Series 3), Core 프로세서NVENC가 탑재된 Turing 이상 GPU—
1.620 정식판: DirectX Dump FilesRadeon RX 7000·9000 시리즈향후 드라이버 예정모든 RTX GPU향후 드라이버 예정
1.620 정식판: Extended PIX MarkersRadeon RX 7000·9000 시리즈향후 드라이버 예정모든 RTX GPU향후 드라이버 예정
1.620 정식판: Driver Reported Messages향후 드라이버 예정향후 드라이버 예정향후 드라이버 예정향후 드라이버 예정
1.722 프리뷰: GPU Timeline CopyDescriptorsRadeon RX 7000·9000 시리즈향후 드라이버 예정향후 드라이버 예정향후 드라이버 예정
1.722 프리뷰: Clustered Geometry, Partitioned Top-Level Acceleration Structures, 간접 가속 구조 빌드Radeon RX 9000 시리즈Arc B-Series Graphics, Core Ultra 프로세서(200V 시리즈·Series 3)모든 RTX GPU향후 드라이버 예정