Re: [情報] Windows 10將會使用新的DirectStorage API

看板PC_Shopping作者 (function(){})()時間5年前 (2020/09/04 14:08), 5年前編輯推噓22(22039)
留言61則, 18人參與, 5年前最新討論串2/2 (看更多)
來自微軟的部落格文章 https://devblogs.microsoft.com/directx/directstorage-is-coming-to-pc/ TL;DR: 1. 透過平行化與批次處理減少 IO 請求,進而減少多餘的請求成本 (提高 throughput) 2. 減少 IO 請求完成通知,避免浪費寶貴的 CPU/GPU time 在上面 3. 跳過非必要 IO 請求步驟以減少請求成本 4. 可能會有新的壓縮 / 解壓縮技術 5. 僅適用 NVMe,因為 NVMe 有特別的資料佇列 6. 明年推出預覽版 首段廢話我就不翻了 ## 儲存科技進化與現代遊戲 IO 特徵 近年來 SSD 與 PCIe 科技的進步,或更精確的說 NVMe 科技,令個人電腦儲存裝置頻寬 遠超過舊時硬碟科技。比起過往的數十 MB/s,現代儲存裝置,例如即將到來的 Xbox Series X 主機所採用之客製 NVMe,可以在一秒內傳輸數 GB 的資料。 電腦遊戲的運作機制也更進步了。現代遊戲載入所需的資料比起過往都來得多,載入的方 式也比以前更聰明。為了載入更大量的資料已填滿記憶體,這些讀取最佳化技巧是必要的 。現代遊戲將貼圖材質等遊戲資源分拆成小部分,過去曾採用的多量少次讀取機制,已被 當代主流的少量多次機制取代,僅載入繪製畫面所需的資源。這種方法可以帶來更佳的記 憶體使用效率,及更好的場景繪製,但也會產生更多的 IO 請求。 不幸的是,現代儲存介面並沒有針對如此高的 IO 數量最佳化,造成瓶頸而無法用光 NVMe 裝置所有的高頻寬,限制了現代遊戲的發展。即使採用再高級的遊戲主機與 NVMe 裝置,僅使用現有的介面也無法滿足所有 IO 管線而浪費了寶貴的頻寬。 這是為什麼我們將 DirectStorage 帶來個人電腦上。這項新技術便是針對現代越來越進 步的儲存科技與遊戲 IO 而來。DirectStorage 將會支援滿足特定條件的系統與 NVMe 裝 置,並將遊戲體驗提升至更高的境界。但即使你的系統不支援 DirectStorage,這並不會 令你無法進行遊戲。 ## DirectStorage 將會如何改變我的遊戲體驗? 新介面將會帶來兩點主要特性:減少過往令人惱火的載入時間,並提升遊戲細節與廣度。 雖然兩項特性看起來天差地遠,兩者皆是受益於 DirectStorage 帶來的 IO 系統升級。 不管是角色服裝的貼圖材質,或是遠景的高山,皆與從儲存裝置載入資料至顯示卡息息相 關。前者可以在場景轉換間的載入時間讀取,而後者則是在開放世界遊戲中隨著角色人物 移動,隨著遠景變成近景而動態載入。 在上述兩種場景中,舊世代遊戲僅有 50 MB/s 左右的速度以載入連續不中斷的遊戲資源 ,僅可達每秒百次、每次 64KB 的 IO 請求。若放到現今頻寬動輒數 GB 每秒的 NVMe 裝 置上,要完全用完可用頻寬,將會使 IO 數量爆增至每秒數萬次。以 Series X 的 2.4GB/s 儲存裝置來說,一樣使用 64KB 區塊大小,若要用完頻寬,必須處理每秒超過 35000 次的 IO 請求。 現有的介面令應用程式必須手動處理從發起、等待到結束的過程,且一次一個請求。每次 請求成本雖然不太大,對跑在慢速儲存裝置上的舊有遊戲來說不是問題,但當規模放大到 數萬次每秒時,過多的請求成本成為當代遊戲對 NVMe 裝置頻寬的使用瓶頸。 除了上述限制,這些儲存在裝置上的遊戲資源還處於壓縮狀態。當處理器或顯示卡需要這 些資源時,這些資源必須先被解壓縮才能使用。執行中的電腦遊戲可以從磁碟取得任意數 量的資料,但需要更有效率的解壓縮方法並傳輸到顯示卡以繪製畫面。DirectStore 可以 讓遊戲採用當代最新,及未來可能發展的解壓縮技術。 當一款遊戲需要載入並解壓縮數千區塊資料以繪製下個畫面時,現有每次一個請求的模型 是沒有效率的。DirectStorage 技術介面將改善上述問題,並最大化吞吐量以餵滿整個 NVMe 裝置所有 IO 管線,並直送至顯示卡。 DirectStorage 將採用下述方法:減少每個 NVMe 請求的成本、批次處理平行 IO 請求以 最佳化資料傳輸至顯示卡的效率、賦予遊戲更細微的控制粒度以掌控 IO 請求完成通知, 避免每次收到一點資料就必須響應通知。 透過這些方式,開發者將能夠以數倍於過往的超高效率處理 IO 請求,最終得以最小化遊 戲載入時間,帶給玩家隨著角色移動同時載入更大、更細緻的虛擬世界。 ## 為什麼是 NVMe? NVMe 裝置除了擁有極高的頻寬,獨有的硬體資料存取管線(NVMe 佇列)更特別適合遊戲 運作方式。為了從儲存裝置取得資料,作業系統向裝置送出請求,而請求的資料將透過此 佇列傳輸至應用程式中。每個 NVMe 裝置具有多個佇列,且每個佇列可以同時儲存多個請 求資料。這個模型完美符合現代遊戲載入資料的平行化、批次處理運作方式。 DirectStorage 作業模式本質上即是給予開發者直接控制這些高度最佳化裝置的能力。 在此之上,現有介面造成從應用程式發起請求、到儲存裝置處理完畢之間,多了不少多餘 的步驟,而產生不必要的請求成本。這些多餘的步驟包含了 IO 操作中間的各種資料變換 。但是,這些步驟不見得在每一個請求、每一個 NVMe 裝置、每個遊戲主機中都是必要的 。透過支援的 NVMe 裝置與配置正確的主機,DirectStorage 可以自動偵測並跳過這些非 必要的檢查與操作,使每個 IO 請求成本降低。 上述這些理由便是為何 NVMe 儲存科技是 DirectStorage 與新世代高效能遊戲 IO 最適 合的選擇。 ## 什麼時候可以取得更近一步的細節? 每個的 DirectX 家族功能,微軟都會與最好的遊戲工業廠商探討並立下標準,讓遊戲開 發者得以取用,最終帶到玩家的遊戲主機中。 我們已經開始 DirectStorage 的開發程序,並與我們的產業夥伴合作以完成設計介面與 伴隨的組件。我們的目標是明年將 DirectStorage 開發者預覽版交至遊戲開發者手中。 -- 可以討論的點 1. 沒提到 DMA,雖然 NV 說有 2. SSD 是否需要特別支援 DS 3. 是否有分支援程度,以後或有 DS-ready SSD 跟顯卡 3. SATA 墓上的草都長得跟我妹一樣高了,我還在用 MX500 4. 不對我沒有妹妹 QQ --

04/16 19:23,
招喚obov
04/16 19:23

04/16 19:42,
樓下obov
04/16 19:42

04/16 21:50,
樓下obov
04/16 21:50

04/16 21:53,
上面好多obov 樓下繼續當obov
04/16 21:53

04/16 22:20,
恩 沒問題 繼續當obov
04/16 22:20
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.39.149 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1599199712.A.AD2.html

09/04 14:12, 5年前 , 1F
學長安安 ><
09/04 14:12, 1F

09/04 14:24, 5年前 , 2F
用 mac os 不就一勞永逸了嗎...windows就是愛自找
09/04 14:24, 2F

09/04 14:24, 5年前 , 3F
一堆麻煩 花錢買罪受
09/04 14:24, 3F
https://imgur.com/wFoeyIg
真的,真香

09/04 14:29, 5年前 , 4F
在mac上玩遊戲 花錢買罪受的是誰啊 ㄏ
09/04 14:29, 4F
https://imgur.com/z0ROnfw
我大 ROG ※ 編輯: s25g5d4 (59.127.39.149 臺灣), 09/04/2020 14:33:17

09/04 14:32, 5年前 , 5F
他的意思是用mac os就不用打遊戲 一勞永逸吧
09/04 14:32, 5F

09/04 14:33, 5年前 , 6F
我沒有用過那麼高規的SSD,想問一下板上用NVMe SSD
09/04 14:33, 6F

09/04 14:33, 5年前 , 7F
的板友,現在你們玩遊戲會遇到那個「惱人的讀取」嗎
09/04 14:33, 7F

09/04 14:34, 5年前 , 8F
用mac os甚麼事情都不能做就不會想東想西浪費時間了
09/04 14:34, 8F

09/04 14:35, 5年前 , 9F
不過從這個文章看起來,像是現在的讀取可能很快,但
09/04 14:35, 9F

09/04 14:35, 5年前 , 10F
以後那些過場會變成「秒讀」的樣子
09/04 14:35, 10F

09/04 14:37, 5年前 , 11F
讀多慢都有方法去處理 這是遊戲設計的一環
09/04 14:37, 11F

09/04 14:38, 5年前 , 12F
當初PS5發表的時候 忘了在哪個板就有看到遊戲設計的
09/04 14:38, 12F

09/04 14:38, 5年前 , 13F
分享了 以前讀很慢的時候 就是多塞一些無意義的長廊
09/04 14:38, 13F

09/04 14:39, 5年前 , 14F
之類的 增加你移動時間 去偷讀取時間 遊戲設計師
09/04 14:39, 14F

09/04 14:39, 5年前 , 15F
但我對於他講的那個 50MB/s 挺有疑問的
09/04 14:39, 15F

09/04 14:39, 5年前 , 16F
設計的好 就算多爛的讀取都不一定有感 但如果能讀
09/04 14:39, 16F

09/04 14:39, 5年前 , 17F
現在遊戲讀取還是這種速度嗎?
09/04 14:39, 17F

09/04 14:40, 5年前 , 18F
很快 遊戲設計又能有更多操作空間 影響最大的應該
09/04 14:40, 18F

09/04 14:40, 5年前 , 19F
是開放世界
09/04 14:40, 19F

09/04 14:42, 5年前 , 20F
舊世代(XBOX PS4)是HDD 小檔讀寫差不多啊
09/04 14:42, 20F

09/04 14:43, 5年前 , 21F
喔喔 我了解了 我還想說大家都在用SSD怎麼會那麼慢
09/04 14:43, 21F

09/04 14:44, 5年前 , 22F
SSD要不要特規 官方QA有提到 不用 API更新以後就可
09/04 14:44, 22F

09/04 14:45, 5年前 , 23F
以 沒掛保證的只有HDD會不會進這個協定
09/04 14:45, 23F

09/04 14:47, 5年前 , 24F
09/04 14:47, 24F

09/04 14:48, 5年前 , 25F
目前NVME SSD主要還是用在系統碟吧,等到用到遊戲
09/04 14:48, 25F

09/04 14:49, 5年前 , 26F
QA裡面也有提到一點Cuda Double的設計
09/04 14:49, 26F

09/04 14:49, 5年前 , 27F
碟後才知道吧
09/04 14:49, 27F

09/04 14:50, 5年前 , 28F
用在哪你自己的決定吧 我就拿NVME去給遊戲碟阿 系統
09/04 14:50, 28F

09/04 14:50, 5年前 , 29F
拉在快有點無感了
09/04 14:50, 29F

09/04 14:51, 5年前 , 30F
而且系統小檔讀寫居多 nvme跟Sata的也沒差到很多
09/04 14:51, 30F

09/04 14:53, 5年前 , 31F
但就算是用 SATA SSD,也會比那個50MB/s快很多吧
09/04 14:53, 31F

09/04 14:55, 5年前 , 32F
快不一定有用阿 遊戲設計師一定是以常態去設計
09/04 14:55, 32F

09/04 14:55, 5年前 , 33F
所以你再怎麼快遊戲可能還是做成一堆偷讀取時間的內
09/04 14:55, 33F

09/04 14:55, 5年前 , 34F
09/04 14:55, 34F

09/04 14:56, 5年前 , 35F
https://bit.ly/2Z74Pgh 這裡有篇文章響應 friedpig
09/04 14:56, 35F

09/04 14:56, 5年前 , 36F
對系統SSD的看法。NVMe是有比較快,但其實差別很小
09/04 14:56, 36F

09/04 14:57, 5年前 , 37F
我不用nvme當系統碟還有另一個點 nvme都有夠熱 又快
09/04 14:57, 37F

09/04 14:57, 5年前 , 38F
我對他壽命信心度比較低 遊戲碟死了就算了 系統碟死
09/04 14:57, 38F

09/04 14:57, 5年前 , 39F
了麻煩的要死 寧願用SATA的SSD做系統
09/04 14:57, 39F

09/04 15:21, 5年前 , 40F
並不是所有的NVME SSD都很熱也有溫度很低的機型,不
09/04 15:21, 40F

09/04 15:21, 5年前 , 41F
過我NVME SSD都習慣加上散熱器
09/04 15:21, 41F

09/04 15:22, 5年前 , 42F
現在NVMe SSD通常都會再裝散熱鰭片了
09/04 15:22, 42F

09/04 15:22, 5年前 , 43F
偷渡問題 nvme ssd 螺絲不見了 要去哪買?
09/04 15:22, 43F

09/04 15:25, 5年前 , 44F
網拍隨便都有
09/04 15:25, 44F

09/04 15:39, 5年前 , 45F
微軟推這API 等於把NVMe當主流規格了
09/04 15:39, 45F

09/04 15:44, 5年前 , 46F
現在遊戲機很少人不裝NVME了吧
09/04 15:44, 46F

09/04 15:47, 5年前 , 47F
NB也是NVMe居多
09/04 15:47, 47F

09/04 15:47, 5年前 , 48F
實際上NVMe價格也降到跟SATA差不多了
09/04 15:47, 48F

09/04 15:57, 5年前 , 49F
不只是把NVMe當主流而已 業界已視為未來多年的重點
09/04 15:57, 49F

09/04 16:01, 5年前 , 50F
像是WD 已推出透過網路存取的NVMe-oF產品了呢
09/04 16:01, 50F

09/04 17:00, 5年前 , 51F
如果遊戲設計都會基於此 那真的nvme會大賣
09/04 17:00, 51F

09/04 17:01, 5年前 , 52F
PS5的遊戲不會在因為讀取 而設計不必要的場景
09/04 17:01, 52F

09/04 17:03, 5年前 , 53F
SATA的遊戲體驗會差太多
09/04 17:03, 53F

09/04 17:19, 5年前 , 54F
NVMe應該早就大賣了吧
09/04 17:19, 54F

09/04 17:20, 5年前 , 55F
NVME SSD螺絲網拍有在賣
09/04 17:20, 55F

09/04 17:46, 5年前 , 56F
反正兩大廠都確定NVMe高速介面了 這就一定是未來標
09/04 17:46, 56F

09/04 17:46, 5年前 , 57F
準也沒啥好討論的 未來開發者一定要照這個設計
09/04 17:46, 57F

09/04 18:24, 5年前 , 58F
Linux可以期待ㄇ
09/04 18:24, 58F

09/05 05:51, 5年前 , 59F
電子材料行 M2螺絲
09/05 05:51, 59F

09/05 10:43, 5年前 , 60F
感謝各位版友回答
09/05 10:43, 60F

09/07 03:49, 5年前 , 61F
Nemv還是讀到吐血
09/07 03:49, 61F
文章代碼(AID): #1VKTdWhI (PC_Shopping)
文章代碼(AID): #1VKTdWhI (PC_Shopping)