微软 DirectStorage 1.1 发布,正式推出 GPU 解压功能
微软的 DirectStorage 是一项旨在让游戏充分利用高速存储(例如 NVMe SSD)的功能,它可以以最小的 CPU 开销,提供每秒数 GB 的小数据(例如 64kb)读取。 目前 DirectStorage 1.1 已发布 ,这个版本正式带来了 GPU 解压缩功能,在解压游戏资源方面加速了好几倍。
新东西:
- GPU 解压缩和 Gdeflate 压缩格式现已可用。
- 添加了 EnqueueSetEvent ,以使用 Win32 事件对象进行完成通知。
- 性能改进和错误修复。
GPU 解压缩功能 & Gdeflate 压缩格式
背景提要:
游戏需要大量数据来构建 —— 每个角色、物体和景观都有描述形状、光照和颜色等特征的“资产”,可能会增加数百 GB 的数据。
为了减少游戏的整体包大小,这些资产平时会被压缩。当游戏运行加载时,资产会被传输到系统内存中,CPU 负责解压缩数据,然后最终将其复制到 GPU 内存中,以供渲染需要时使用。
这些资产在游戏设备上的传输和解压极大地延长了游戏的加载时间,并限制了开放世界场景中包含的细节。
通常,解压缩的工作在 CPU 上完成,因为压缩格式历来仅针对 CPU 进行了优化。但 DirectStorage 1.1 提供了一种替代方法,它将这些资产的解压工作转移到 GPU 上—— 这就是“GPU 解压” 功能。显卡在并行执行可重复任务方面非常高效,可以利用该功能以及高速 NVMe 驱动器的带宽来一次完成更多工作。
该 GPU 解压功能使用一种新的压缩格式,由 NVIDIA 提供,被称为 Gdeflate。使用该 GPU 解压功能,加载游戏资产所需的时间大大减少,从而减少关卡加载时间,改善开放世界流媒体。
在测试中, 当 DirectStorage 运行 GPU 与 CPU 同时解压缩时,场景的加载速度快了近 3 倍。
从图中可看出来,使用 GDeflate 格式(左)的 GPU 在 0.8 秒内加载,而使用 Zlib(右)的 CPU 在 2.36 秒内加载。
有关该 GPU 解压缩功能和 GDeflate 格式的技术细节,可查看 DirectStorage 1.1 发布公告。
GPU 解压功能适用范围
在压缩/解压缩方面,有几个因素会影响游戏性能:
操作系统: DirectStorage 游戏可在 Windows 10 和 Windows 11 上运行,在 Windows 10 和 Windows 11 上运行的游戏都可从高效的 GPU 解压缩实施中获益,因为此功能的关键组件是将工作负载从 CPU 转移到 GPU,对操作系统本身影响不大。
存储设备:支持 DirectStorage 的游戏可在所有设备上运行,但需要 NVMe SSD,因为 NVMe SSD 带宽能力更高,存储介质本身更快,才能看到 DirectStorage 的显着改进。强烈建议将游戏文件保存到 NVMe, 以获得最佳游戏体验。
GPU:支持 Shader Model 6.0 的任何支持 DirectX 12 的 GPU 都可以利用新功能,推荐支持 DX12 Ultimate 的显卡。
优化驱动程序
所有 DirectX 12 + Shader Model 6.0 GPU 都支持 GPU 解压缩功能。但是,DirectStorage 1.1 带来了另一好处:每家 GPU 硬件供应商都对自家硬件提供额外的优化,称为元命令。
有关不同合作伙伴对元命令的支持信息,请参阅下面的链接。
建议为游戏硬件更新到最新的驱动程序,以获得最佳性能。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MariaDB 10.9.4、10.8.6、10.7.7、10.6.11、10.5.18、10.4.27 和 10.3.37 发布
MariaDB 基金会宣布了MariaDB 10.9.4、MariaDB 10.8.6 和 MariaDB 10.7.7 的可用性,它们是各自的短期支持系列中最新的普遍可用版本(从第一个 GA 发布日期起维护一年)。以及MariaDB 10.6.11、MariaDB 10.5.18、MariaDB 10.4.27和MariaDB 10.3.37,它们是各自长期支持系列中的最新稳定版本(维护期五年)。 具体更新内容包括: Backup 在 xb_delta_open_matching_space 中对 info.page_size 的断言失败 (MDEV-18589) Mariabackup 将数据库锁定几分钟 (MDEV-28772) InnoDB 自适应hash indexMDEV-27700,MDEV-29384 MVCC 和 locking(MDEV-29666、MDEV-27927、MDEV-28709、MDEV-29635) 虚拟列 (MDEV-29299,MDEV-29753) InnoDB 崩溃恢复修复 (MDEV-29559) KILL 和事务提交之间的Race con...
- 下一篇
C# 11 正式发布
C# 11 现已发布。公告称,“随着每个版本的发布,社区的参与度越来越高,贡献了从建议、见解和错误报告到整个功能实现的所有内容。这真的是每个人的 C#。” 新版本中的一些亮点更新内容包括: UTF-8 字符串(UTF-8 String Literals) 默认情况下,C# 字符串被硬编码为 UTF-16,而 Internet 上通行的字符串编码是 UTF-8。为了最大限度地减少转换的麻烦和性能开销,现在可以简单地为你的 string literals附加一个u8后缀,以便立即将它们转换为 UTF-8: var u8 = "This is a UTF-8 string!"u8; UTF-8 string literals 只是给你返回一个字节块——以ReadOnlySpan<byte>形式。对于那些需要 UTF-8 编码的场景,这可能比一些专门的新的 UTF-8 字符串类型更有用。 阅读有关UTF-8 字符串文字的文档。 原始字符串 (Raw string literals) 从 C# 11 开始,可以使用原始字符串字面量更轻松地创建多行字符串,或使用需要转义序列的任何字...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能