微软下放次世代Xbox直通存储技术,助PC突破IO性能瓶颈

作者 Liffy_Island   编辑 Liffy_Island   2020-09-02 19:01:43

PC玩家也将享受到全速固态体验了。

      此前读者如果了解过 Xbox Series X 的高速架构细节的话,那么应该对“直通存储”这个新技术多少有些印象。该技术简而言之就是革新 PC 沿用了数十年的 IO (输入输出)协议,加速数据流通,并为开发者提供底层控制。


      今日微软宣布“直通存储”技术将作为 DirectX 图形标准的 API 登陆 Windows 平台。它支持所有具有 NVMe 固态盘的 PC 硬件系统;若是硬件不支持那么对现有系统和游戏也没有影响。“直通存储”只支持 NVMe 标准的硬盘,原因牵扯到 NVMe 标准本身的技术特点,便不在本文展开了。

      游戏作为一种占用空间极大的应用程序,它在数据加载方面做了相当多的技术探索和进化。现代游戏的数据加载采取的优化方式是将大数据切割成小数据,只选择载入所需的部分数据。这种做法无疑更加灵活高效,但也会产生更多的 IO 请求。

      传统机械硬盘 50MB/s 的速度,即便数据块大小只有 64K,每秒的 IO 请求也不过几百条。到了 NVMe 时代,要充分利用每秒数 GB 的传输速度,就需要每秒钟生成上万条 IO 请求。举个例子,Xbox Series X 硬盘速度为 2.4GB/s,若是块大小为 64K,那么每秒要有超过 35000 条 IO 请求才能把这个带宽吃满。

      如今 PC 使用了数十年的存储 API 并没有对这种大量 IO 请求做优化。应用程序每一次面对请求时都是先提交,等待完成,然后再结束。每条请求的开销不算高,对于老游戏在机械硬盘上运行也是绰绰有余。但到了每秒上万条请求的情况,这种方式导致的IO 开销过大,无法让游戏能充分利用到 NVMe 硬盘的超高带宽。


      “直通存储”削减了预请求 NVMe 开销,并给予游戏非常细致的 IO 请求控制权。当 IO 请求完成时会有个提醒,而不是连一次小小的请求结束都必须要作出反应。由此,开发者将拥有高效的方式来处理海量 IO 请求。

      在今日英伟达显卡发布会上,英伟达就与微软合作,使用了“直通存储”API 实现了全新的 RTX IO 技术。让数据绕过 CPU 并快速至 GPU 做解压并存储到显存中。这是显卡设计厂运用该 API 的一种方式。


      鉴于 Xbox Series X 本身是 AMD 硬件体系,不出意外未来的 RDNA 2 架构显卡也会有类似的 IO 技术出炉。微软表示现在已经在和游戏产业伙伴一同完善这个 API 和相应的组件,预计预览版明年开放给全球游戏开发者。未来 PC 玩家也将享受到榨干固态性能后的游戏效果了。

来源:微软开发者博客

| (72) 赞(56)
Liffy_Island 小吃货

关注

评论(72

跟帖规范
您还未,不能参与发言哦~
按热度 按时间