다이렉트스토리지(DirectStorage)는 게임이 고화질화, 대용량화되면서 처리 병목이 되는 IO 관련 대책을 실시해 로딩 시간 고속화를 실시하는 마이크로소프트 기술이다. 새롭게 GPU에 의한 데이터 압축 해제를 포함한 다이렉트스토리지 1.1이 이용 가능하게 된 게 다이렉트X 개발자 블로그에서 발표됐다.
게임에는 캐릭터 데이터, 배경 데이터 등 다양한 게 담겨 있으며 용량은 수백GB 단위로 올라간다. 이 때문에 데이터는 압축되어 있고 게임 플레이를 할 때에는 스토리지에서 메모리에 전송되어 CPU에 의한 데이터 압축 해제가 이뤄진 뒤 최종적으로 GPU VRAM에 전송되어 필요에 따라 이용된다. 이 전송 속도와 압축 해제 시간은 게임 로딩 시간에 영향을 미친다.
다이렉트스토리지는 로딩 시간 단축을 목표로 한 기술로 먼저 다이렉트스토리지 1.0에선 NVMe 드라이브 대역폭을 더 넓게 활용활 수 있게 되어 NVMe 드라이브에 인스톨된 다이렉트스토리지 대응 게임이라면 로딩 시간이 최대 40% 단축된다.
다이렉트스토리지 1.1은 한층 더 고속화를 목표로 데이터 압축 해제를 CPU가 아닌 GPU가 실시하게 된다. 그래픽카드는 반복 가능한 작업을 병렬로 실행할 때 효율적으로 만들어졌으며 고속 NVMe 드라이브 광대역과 결합해 읽기 시간을 더 가속화한다.
지금까지 데이터 압축 형식은 CPU에서의 처리에 최적화되어 왔지만 다이렉트스토리지 1.1에선 GPU를 통한 압축 헤재에 최적화된 엔비디아 GDeflate를 채택했다. CPU가 데이터 압축 해제 처리에서 해제되어 다른 게임 프로세스를 담당할 수 있게 되기 때문에 장면 로딩이 3배 고속화된다고 한다. 관련 내용은 이곳에서 확인할 수 있다.