마이크로소프트는 DirectX 12의 주요 개선 사항(Shader Model 6.9 및 DXR 1.2 향상 포함)을 담은 Agility SDK 1.619를 공식 출시했습니다.
Microsoft Agility SDK의 주요 업데이트: 셰이더 모델 6.9, DXR 1.2 및 NVIDIA RTX, AMD Radeon, Intel Arc GPU용 향상된 DX12 기능
새롭게 출시된 Agility SDK 1.619 에는 셰이더 모델 6.9, DXR 1.2, 그리고 다양한 DX12 개선 사항 등 세 가지 핵심 업데이트가 포함되어 있습니다.주요 내용은 다음과 같습니다.
- 셰이더 모델 6.9 (DXC 1.9.2602.16을 통해):
- 롱 벡터 연산을 지원합니다.
- 16비트 부동소수점 특수 명령어 소개.
- 16비트 및 64비트 셰이더 연산과 웨이브 연산의 필수 포함.
- DXR 1.2의 피처링에 대한 HLSL 노출.
- DXR 1.2:
- 불투명도 미세지도(이전에 출시되었으며, 이제 새로운 SM 6.9 기능이 활성화되었습니다).
- 셰이더 실행 순서 재정렬(SER).
- D3D 고객 요청 기능:
- 리소스 뷰 생성 API가 업데이트되었습니다.
- 주기적인 가지치기 알림.
- 확장된 배전망 제한.
- CPU 타임라인 쿼리가 해결되었습니다.
이번 릴리스의 가장 주목할 만한 요소는 셰이더 모델 6.9로, HLSL에서 4개에서 1024개 요소까지의 벡터를 관리할 수 있게 해주는 롱 벡터(Long Vectors)를 비롯한 필수 기능들이 도입되었습니다.또한, 16비트 및 64비트 셰이더 연산이 이제 기본 요구 사항이 되었습니다.

DXR(DirectX Ray Tracing) 업데이트에는 불투명도 마이크로맵(Opacity Micromaps, OMM) 및 셰이더 실행 순서 재정렬(Shader Execution Reordering, OMM)과 같은 중요한 기능이 포함되어 있습니다. OMM의 도입으로 하드웨어가 알파 테스트를 거친 형상을 관리하는 방식이 개선되어 AnyHit 셰이더 호출을 사용하는 기존 방식보다 훨씬 뛰어난 성능 향상을 제공할 수 있습니다.

마이크로소프트는 이전에 OMM을 활용하여 패스 트레이싱 게임에서 최대 2.3배의 성능 향상을 달성했다고 발표했으며, NVIDIA의 특정 데모에서는 60% 이상의 성능 향상을 보여주었습니다.예를 들어, 한 데모에서는 OMM을 사용하지 않았을 때 55 FPS로 실행되던 장면이 이 기능을 활성화하자 90 FPS로 향상되는 것을 보여주었습니다.현재 OMM에 대한 완벽한 지원은 NVIDIA RTX GPU에서만 사용할 수 있습니다.

이러한 기능을 활용하는 대표적인 게임으로는 알파 테스트를 거친 기하학적 모델을 많이 사용하는 것으로 유명한 Alan Wake가 있습니다.이 게임은 엄청난 수의 삼각형과 정점을 처리할 수 있으며, 높은 레이 트레이싱 설정에서는 프레임당 최대 3, 690만 개의 레이를 생성할 수 있습니다.특히 SER과 OMM을 사용하면 RTX 4090은 장면을 렌더링하는 데 걸리는 시간을 기존 16.8ms에서 약 10.2ms로 단축할 수 있습니다.
불투명도 마이크로맵
불투명도 마이크로맵(OMM)은 비용이 많이 드는 AnyHit 셰이더 호출에 대한 의존도를 줄여 알파 테스트된 기하 처리의 효율성을 향상시킵니다.이 기능은 이전에 도입되었으며 최근 업데이트를 통해 HLSL 노출이 확장되었습니다.
셰이더 실행 순서 재정렬
셰이더 실행 순서 재정렬(SER)은 애플리케이션이 병렬 처리를 개선하기 위해 셰이더 코드를 구성할 수 있도록 하여 셰이더 실행 속도를 향상시킵니다.이 기능은 이제 미리 보기 단계를 벗어났으며, 애플리케이션은 기기에서 순서 재정렬을 지원하는지 확인할 수 있습니다.
또한, Agility SDK 1.619는 DirectX 12 Ultimate API에 중요한 개선 사항을 제공하여 버퍼 뷰의 기존 제한 사항을 해결합니다.이번 릴리스를 통해 개발자는 바이트 오프셋과 크기를 사용하여 버퍼 뷰를 지정할 수 있게 되어 API 사용성이 크게 향상되었습니다.
GPU 아키텍처가 발전함에 따라 D3D12의 뷰 생성 모델, 특히 버퍼 접근 패턴 및 디스크립터 관리와 관련하여 문제가 발생했습니다.이번 업데이트는 API의 이러한 측면을 현대화하여 최신 요구 사항을 충족하도록 개선했습니다.
업데이트된 모델은 바이트 오프셋 및 크기로 버퍼 뷰를 측정할 수 있도록 하며,
HRESULT디버그 계층 유효성 검사에만 의존하는 대신 향상된 오류 처리를 제공합니다.주기적인 트림 알림
새로운 커널 수준의 트림 알림 기능이 D3D12 런타임에 통합되어 애플리케이션이 새로운 드라이버 지원 없이도 상주 시간 트림 시점에 대한 알림을 받을 수 있게 되었습니다.
1D 배송 한도 증가
이번 업데이트를 통해 최대 1차원 디스패치/디스패치 메시 크기가 기존 제한인 65535를 넘어 최신 하드웨어의 성능을 수용할 수 있게 되었습니다.
D3D12_FEATURE_DATA_D3D12_OPTIONS22. Max1DDispatchSizeD3D12_FEATURE_DATA_D3D12_OPTIONS22. Max1DDispatchMeshSizeCPU 타임라인 쿼리 해결
새롭게 도입된 쿼리 힙은 CPU 타임라인에서 해상도를 확보하여 GPU 작업 중 불필요한 오버헤드를 최소화합니다.이 기능은
ID3D12Device15::CreateQueryHeap1다음과 같은 특징을 도입합니다.ID3D12Device15::ResolveQueryData.
Microsoft Agility SDK 1.619에 대한 GPU 벤더 지원
Agility SDK 1.619에 대한 지원이 이제 세 주요 GPU 제조사 모두에서 제공되지만, 제품 아키텍처에 따라 호환성 수준은 다를 수 있습니다.
하드웨어 지원 개요
| 독립 소유 벤더(IHV) | 드라이버 링크 |
| AMD | AMD 소프트웨어: Adrenalin 에디션 26.2.1 AMD 소프트웨어: AgilitySDK 개발자 프리뷰 에디션 25.30.21.01 |
| 인텔 | Intel Arc Graphics – Windows |
| 엔비디 | NVIDIA 공식 드라이버 | NVIDIA 웹사이트 또는 NVIDIA 앱을 통해 자동 업데이트하세요. |
NVIDIA는 자사의 모든 RTX GPU 제품군이 SDK의 최신 개선 사항과 호환된다고 밝혔습니다. DXR 1.2의 경우, OMM의 하드웨어 가속은 RTX 40 시리즈 이상에서 적용되며, SER 또한 같은 세대에서 지원됩니다.이전 세대 GPU는 OMM 기능에 대한 소프트웨어 에뮬레이션만 제공합니다.
AMD 측에서는 RX 7000, RX 900, 그리고 라이젠 AI 300/400 시리즈를 지원하여 RDNA 아키텍처와의 호환성을 보여줍니다.하지만 DXR 1.2 및 셰이더 모델 6.9의 모든 기능을 완벽하게 지원하는 것은 RDNA 4(라데온 RX 9000) GPU에만 해당됩니다.
인텔은 자사의 Arc B 시리즈(Battlemage)가 모든 SDK 기능을 지원할 것이라고 주장합니다.또한, VPblit 3DLUT와 같은 특정 D3D 기능은 Lunar Lake CPU에도 적용됩니다.
특히 OMM은 RTX 40 시리즈 이상에서만 사용할 수 있는 반면, SER은 NVIDIA RTX 40+ 및 Intel Arc B-시리즈에서 재정렬 기능을 제공하며, RX 9000 시리즈 GPU에서는 재정렬 기능을 사용할 수 없습니다.
| AMD | 인텔 | 엔비디 | |
| 긴 벡터 | AMD 라데온 RX 9000 시리즈 | 인텔 아크 B 시리즈 그래픽 | 모든 RTX 하드웨어 |
| 16비트 부동소수점 특수 문자 | AMD 라데온 RX 9000 시리즈 | 인텔 아크 B 시리즈 그래픽 | 모든 RTX 하드웨어 |
| 불투명도 미세지도(OMM) | 해당 없음 | 해당 없음 | 모든 RTX 하드웨어 지원. RTX 4xxx+ 모델에서는 하드웨어 가속을 지원하며, 이전 모델에서는 에뮬레이션을 사용합니다. |
| 셰이더 실행 순서 재정렬(SER) | AMD Radeon RX 9000 시리즈는 API를 지원하지만 순서 재정렬 기능은 구현하지 않습니다. | RTX 4xxx+ GPU는 API를 지원하고 재정렬을 수행합니다. | 인텔 Arc B 시리즈 그래픽.현재 64KB 제한이 있으며, 향후 드라이버 업데이트를 통해 증가될 예정입니다. |
| 수정된 리소스 뷰 생성 API | AMD 라데온 RX 7000 및 9000 시리즈 | 인텔 아크 B 시리즈 그래픽 | 모든 RTX 하드웨어 |
| 주기적인 트림 알림 | 해당 없음 | 인텔 아크 B 시리즈 그래픽 | 모든 RTX 하드웨어 |
| 증가된 배전망 제한 | AMD Radeon RX 7000 및 9000 시리즈. UINT_MAX 컴퓨팅, 64k 메시. | 인텔 Arc B-시리즈 그래픽.현재 64KB 제한이 있으며, 향후 드라이버 업데이트를 통해 증가될 예정입니다. | 모든 RTX 하드웨어에서 사용 가능합니다.현재는 64k 제한이 있으며, 향후 드라이버 업데이트를 통해 제한이 완화될 예정입니다. |
| CPU 타임라인 쿼리 해결 | AMD 라데온 RX 7000 및 9000 시리즈 | 인텔 아크 B 시리즈 그래픽 | 모든 RTX 하드웨어 |
| 울타리 장벽 (미리보기) | AMD 라데온 RX 7000 및 9000 시리즈 | 인텔 아크 B 시리즈 그래픽 | 개발 중인 드라이버에 접근하려면 개발자 지원팀에 문의하십시오. |
| VPblit 3DLUT (미리보기) | AMD Radeon RX 7000 시리즈 그래픽 카드 및 내장 그래픽이 포함된 Ryzen AI 300/400 시리즈 프로세서 | 인텔 코어 울트라 프로세서, 루나 레이크 및 팬서 레이크 플랫폼 | 자세한 접근 권한은 개발자 관계 담당자에게 문의하십시오. |
답글 남기기