当前位置: 代码网 > 科技>操作系统>Windows > 如何提升游戏性能? Win11系统中DirectStorage技术详解

如何提升游戏性能? Win11系统中DirectStorage技术详解

2025年05月07日 Windows 我要评论
长久以来,微软一直在「绞尽脑汁」优化 windows 操作系统的游戏体验。我们能够数得着的优化方式就有 10 来种之多,而directstorage正是其中的重要一环。directstorage最初是

长久以来,微软一直在「绞尽脑汁」优化 windows 操作系统的游戏体验。我们能够数得着的优化方式就有 10 来种之多,而 directstorage 正是其中的重要一环。

directstorage 最初是为 xbox「velocity 架构」设计的 directx api。就像 directx 12 ultimate 能提供统一的顶级渲染技术那样,directstorage 也为 xbox 和游戏 pc 引入了先进的 io(输入/输出)技术支持。

在支持 directstorage 的游戏 pc 上运行兼容游戏时,将大大缩短加载时间,为玩家呈现更广阔、更细致的虚拟世界。接下来,我们就来详细聊聊 directstorage 的工作原理,以及它如何彻底改变 windows 11 的游戏体验。

01. 存储技术与游戏 io 模式的演进

随着 ssd 和 pcie,尤其是 nvme 技术的飞速发展,现代游戏 pc 的「存储性能」早已今非昔比。相比传统机械硬盘(每秒几十兆)的传输速度,像 xbox series x 使用的定制 nvme 固态硬盘,理论速度就可达每秒数千兆,性能提升非常明显。

与此同时,游戏的工作负载也在不断变化:

  • 现代游戏需要加载的数据量越来越大,而且加载方式也更加智能。这是因为,更大的数据量需要更高效地装载到「共享 gpu 内存」或「专用 gpu 内存」中。
  • 现代游戏不再是一次性加载「大型数据块」,而是将素材(如纹理)切成小块,只加载当前画面所需的部分。这种方式不仅提高了显存利用率,还能带来更优质的画面效果。不过,这也显著增加了 io 请求的数量。

比较尴尬的是,早期的「存储 api」并没有针对大量 io 请求进行优化,无法充分发挥 nvme 的带宽潜力,导致性能瓶颈,限制了游戏的表现。即使你有顶级的 pc 硬件和 nvme 硬盘,传统 api 依然无法完全利用 io 数据通道,宝贵的带宽就这样被白白浪费掉了。

正因如此,微软才推出了 directstorage 技术。这是专门针对 pc 游戏存储和 io 场景优化的全新 api,能够大幅提升游戏的性能表现。

02. directstorage 在 windows 11 中的工作原理

directstorage api 主要从 2 个方面来提升游戏体验:

  • 缩短加载时间
  • 支持更精细和庞大的游戏场景

这两个优势都源于 directstorage 对 io 系统的全面升级。举个例子:

  • 无论是游戏角色服装的细腻纹理,还是远景中宏伟山脉的渲染,都离不开从「存储设备」提取数据并传送到「gpu」的过程。
  • 加载时间的缩短通常体现在场景切换时加载画面的提速,而场景细节的实时加载则更多出现在开放世界游戏中——当玩家移动时,远方景物实时加载,同时系统会卸载已经脱离视野的数据。

2.1 早期技术瓶颈

  • 传统游戏的素材流加载速度大约是每秒 50 mb,按照 64 kb 的区块大小(即每个纹理块的大小)来计算,每秒最多能处理几百次 io 请求。
  • 而现在,nvme 固态硬盘的传输能力已经达到数千兆字节每秒。要充分利用这些带宽,io 请求量会激增到数万次。
  • 以 xbox series x 的 nvme 硬盘为例,2.4 gb/s 的带宽在相同「块大小」下,每秒需要处理超过 35000 次 io 请求,才能完全利用带宽。

但遗憾的是,早期的「存储 api」需要逐一处理这些 io 请求,也就是:先提交请求、等待完成,然后再处理结果。对于运行在机械硬盘上的老游戏来说,单个请求的开销并不大,不会成为瓶颈。但在面对每秒成千上万次的请求时,这种操作方式就让 io 开销迅速攀升,严重阻碍了 nvme 带宽的充分利用。

另外,游戏素材往往是被压缩过的,在被 gpu 使用之前,必须先解压。如果游戏加载了再多数据,但没有高效的解压缩方式,也无法迅速将数据送到 gpu 完成渲染。

2.2 directstorage 技术

顾名思义,directstorage 就是「直连存储」。它让游戏能够利用最先进的解压缩技术,并优化从 nvme 到 gpu 的整个数据传输路径,最大限度地提升各个环节的性能,充分利用 nvme 来改善游戏体验。

  • directstorage 允许跳过 cpu 这样的不必要路径,让 gpu 更快地接收游戏数据,从而实现几乎即时的加载时间。

  • directstorage 支持最新的 gpu 解压缩技术,可以将解压缩工作从 cpu 挪动到 gpu 中。这就彻底跳过了 cpu,使得 gpu 可以更快、更直接地处理大量压缩数据。

这种方法极大地提高了处理大量 io 请求的效率,不仅缩短了玩家等待加载的时间,还能让虚拟世界变得更加庞大、细腻,同时保持与角色行动的实时同步。

03. 为什么要用 nvme?

nvme 不仅仅是一种拥有极高带宽的固态硬盘技术,它的硬件数据通道(即 nvme 队列)也非常契合游戏负载的需求:

  • 操作系统通过这些队列向硬盘提交请求,而硬盘也通过队列向应用传递数据支持。每个 nvme 设备可以拥有多个队列,每个队列都能同时处理大量请求。
  • 这种特性完美匹配了现代游戏工作负载的并行和批量处理需求。directstorage 编程模型则让开发者能够直接控制这些高效的硬件资源。

此外,传统存储 api 往往包含很多「多余步骤」,导致应用的 io 请求在抵达存储设备前,产生不必要的开销。这些额外操作有时是基于正常 io 操作的特定需求,但并非适用于所有 nvme 硬盘和游戏场景。directstorage 能够在检测到这些冗余步骤「非必要」时直接跳过,从而进一步减少 io 请求的处理开销。

04. directstorage 的软/硬件要求

  • xbox series x 和 xbox series s 游戏机原生支持 directstorage,这是 velocity 架构的一部分。
  • 在游戏 pc 端,windows 11 和 windows 10 v1909 及更高版本支持 directstorage,但对硬件有一定要求:
    • 必须使用至少 1tb 的 pcie 3.0 nvme 固态硬盘,不过 pcie 4.0 会带来更好的性能表现。
    • 必须使用支持 shader model 6.0 的 directx 12 ultimate gpu。例如 nvidia 的 rtx 20 系列及更高型号,以及搭载 rdna 2 架构的 amd 显卡等。
  • steamdb 上有一个支持 directstorage 的游戏列表,共列出了 47 款游戏。

简单来说,要想体验 directstorage 带来的极致游戏性能,一块高速的 nvme 固态硬盘和一块支持 directx 12 ultimate 的强力显卡是必不可少的。

如果游戏和硬件支持,windows 11 会自动激活 directstorage。如果你的电脑配置不支持 directstorage,也不用担心,游戏依然可以正常运行,只不过性能表现会和以往相同。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com