《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 電子元件 > 業(yè)界動(dòng)態(tài) > SSD固態(tài)硬盤對(duì)游戲行業(yè)的一場(chǎng)革命

SSD固態(tài)硬盤對(duì)游戲行業(yè)的一場(chǎng)革命

2021-02-04
來(lái)源: 電子工程專輯
關(guān)鍵詞: SSD固態(tài)硬盤

  前年的Computex展上,AMD曾經(jīng)演示過(guò)一段畫面demo,對(duì)比Radeon RX 5700系列和英偉達(dá)的Geforce 2080 Ti,宣稱畫面與性能大勝。當(dāng)時(shí)這個(gè)演示是引起了不小的爭(zhēng)議的,該場(chǎng)景表達(dá)的是帶寬對(duì)于游戲的影響。但實(shí)際上,在現(xiàn)實(shí)世界的游戲作品中,幾乎不存在這種類型的負(fù)載。事實(shí)真的如此嗎?

  當(dāng)時(shí)的這段演示,可能已經(jīng)在預(yù)示“存儲(chǔ)”的未來(lái),對(duì)于游戲行業(yè)接下來(lái)持續(xù)數(shù)十年的影響了。

  1.png

  似乎在當(dāng)代PC領(lǐng)域,配SSD固態(tài)硬盤是個(gè)日常——都什么年代了,還談SSD固態(tài)硬盤是HDD機(jī)械硬盤的未來(lái)?PC游戲自然也應(yīng)該在“享用”SSD帶來(lái)的速度優(yōu)勢(shì)吧?

  但在次世代游戲主機(jī)領(lǐng)域,高速SSD的采用算是個(gè)新鮮事,或者說(shuō)至少以前SSD在游戲主機(jī)領(lǐng)域并不太受待見(jiàn)——索尼PS5和微軟Xbox Series X終于“不約而同”地用上了SSD,而且是NVMe SSD。因?yàn)槭聦?shí)上,對(duì)傳統(tǒng)生態(tài)的游戲主機(jī)而言,硬盤速度或許真的沒(méi)那么重要,容量才是關(guān)鍵。對(duì)于單游戲動(dòng)輒10GB+的容量,以及游戲主機(jī)需考慮成本問(wèn)題的現(xiàn)狀而言,開(kāi)發(fā)者們總在想方設(shè)法降低硬盤性能對(duì)于實(shí)際游戲體驗(yàn)的影響。

  從最直接的角度來(lái)思考,換個(gè)SSD似乎也不是什么大不了的事情,不就讀寫快點(diǎn)兒?jiǎn)幔靠煊帜芸斓侥膬喝??游戲里屏幕上需加載和待加載的元素,不都是放在RAM里面的嗎?換個(gè)SSD,游戲體驗(yàn)就大不同了?

  或許SSD在游戲主機(jī)上采用的開(kāi)始,乃是改寫游戲行業(yè)歷史的序章。本文就從較淺層的技術(shù)角度來(lái)談?wù)?,SSD對(duì)于游戲界究竟產(chǎn)生了多大的影響。

2.png

  換用SSD的PS和Xbox

  從紙面數(shù)字來(lái)看,微軟Xbox Series X用了總?cè)萘?TB的NVMe SSD固態(tài)硬盤,順序讀取速度為2.4GB/s。這對(duì)SSD而言算不上什么驚艷數(shù)字;雖然已經(jīng)比機(jī)械硬盤快10-20倍了,但在PC平臺(tái)也就是個(gè)入門水平。而索尼PS5的SSD總?cè)萘?25GB,順序讀取速度5.5GB/s(PS4是50-100MB/s),接口PCIe 4.0 x4,通道數(shù)是12個(gè)——這就有點(diǎn)兒高端的意思了。

  不過(guò)換用SSD究竟有什么用呢?5.5GB/s的順序讀取,在RAM速度面前,起碼有幾十倍甚至上百倍的差距。硬盤和內(nèi)存介質(zhì)仍然不是一個(gè)世界的東西,PS5不照樣配備16GB GDDR6嗎?

  先來(lái)看看微軟這邊,微軟在Xbox存儲(chǔ)相關(guān)的技術(shù)表達(dá)上,引入了一種“Xbox Velocity Architecture”架構(gòu)。這個(gè)市場(chǎng)宣傳詞,在微軟的定義下包含了4個(gè)組成部分,分別是SSD固態(tài)硬盤本身、壓縮引擎、用于訪問(wèn)存儲(chǔ)的軟件API,以及名為Sampler Feedback Streaming的硬件特性(一種GPU特性,可提高紋理利用效率:哪些數(shù)據(jù)可以從RAM中移除,并判斷下一步要加載哪些數(shù)據(jù)到RAM)。

  就Xbox Velocity Architecture的這幾個(gè)構(gòu)成而言,很難看出什么爆炸性突破,至少就微軟公布的信息來(lái)看是如此。

3.png

  虛幻5引擎演示的圖形計(jì)算畫面

  索尼PS5相對(duì)復(fù)雜,去年索尼在介紹PS5時(shí),花了1/3的時(shí)間專門介紹PS5的存儲(chǔ)系統(tǒng)。這表明SSD在PS5之上的分量不輕。去年EPIC在虛幻5引擎的技術(shù)演示中強(qiáng)調(diào),演示中那些令人嘆為觀止的效果都需依賴PS5的高速SSD。雖說(shuō)這其中多少有索尼和EPIC底層合作的成分在,但技術(shù)本身不應(yīng)被輕易否定。有關(guān)PS5的SSD及相關(guān)的存儲(chǔ)架構(gòu),后文會(huì)詳述。

  SSD的高帶寬,和數(shù)據(jù)壓縮

  從直覺(jué)來(lái)看,換用SSD的最大價(jià)值,應(yīng)該在于啟動(dòng)游戲、加載場(chǎng)景會(huì)更快。這的確是這代游戲主機(jī)的提升所在。下面這張圖來(lái)自tom's GUIDE的PS5評(píng)測(cè)文章,是PS5與PS4兩代機(jī)型的不同游戲加載時(shí)間對(duì)比:

4.png

  來(lái)源:tom's GUIDE

  部分游戲的差異在這里還是相當(dāng)顯著的。像《蜘蛛俠:邁爾斯·莫拉萊斯》這樣的游戲,“在home頁(yè)面選擇游戲,到角色出現(xiàn)在大街上開(kāi)始打怪,幾乎是0時(shí)間差”。Android Authority在PS5體驗(yàn)文章中提到,“所有PS5游戲的加載頁(yè)過(guò)渡時(shí)間都在10秒以下,更多的是在3-4秒”,甚至因?yàn)榧虞d頁(yè)面時(shí)間過(guò)短,連頁(yè)面上的那些文字提示都看不全,“不過(guò)這也是值得的”。

  索尼宣稱,2GB數(shù)據(jù)加載時(shí)間只需要0.27秒——在PS4時(shí)代,1GB數(shù)據(jù)從硬盤加載完成需要20秒。但如果只是游戲啟動(dòng)、場(chǎng)景過(guò)渡加載時(shí)間變短,那么SSD實(shí)在沒(méi)什么可大書(shū)特書(shū)的。畢竟這本來(lái)就是SSD相比HDD的優(yōu)勢(shì),更不用說(shuō)什么“革新”游戲行業(yè)。

  GPU在數(shù)據(jù)吞吐方面的努力上一直沒(méi)停過(guò)。當(dāng)代GPU越來(lái)越多的開(kāi)始引入一些專用單元,比如Turing架構(gòu)針對(duì)光線追蹤特別引入了RT核心與Tensor核心。在存儲(chǔ)架構(gòu)方面,當(dāng)代GPU普遍都有專門的數(shù)據(jù)壓縮單元。

  數(shù)據(jù)壓縮的價(jià)值在于,將數(shù)據(jù)體積壓縮得更小之后(典型的比如紋理數(shù)據(jù)),再傳輸?shù)絻?nèi)存或者cache之上,減少數(shù)據(jù)傳輸量,因此也就增大了帶寬。不過(guò)一般來(lái)說(shuō),數(shù)據(jù)解壓過(guò)程是需要CPU進(jìn)行的,軟解的效率并不高。

5.png

  Xbox Series X和PS5都在數(shù)據(jù)壓縮和解壓方面做了文章。SoC的I/O模塊部分都有專門的數(shù)據(jù)解壓縮硬件單元。實(shí)際上先前的游戲主機(jī)就有這樣的特性,只不過(guò)存儲(chǔ)介質(zhì)不是以SSD的方式存在的。微軟著眼于紋理數(shù)據(jù)壓縮,因?yàn)榧y理數(shù)據(jù)占到游戲數(shù)據(jù)讀取與解壓最大的比例,紋理壓縮算法名為BCPack。索尼除了Zlib之外,采用一種名為Kraken的格式。

  索尼宣稱,其解壓縮硬件能夠?qū)SD之上5.5GB/s的數(shù)據(jù)流,解壓縮為8-9GB/s的數(shù)據(jù)。在壓縮效率最理想的情況下,理論最高輸出率是22GB/s。這個(gè)量級(jí)很大程度上也是基于其NVMe SSD。這樣的專用硬件,極大緩解了CPU的壓力。索尼宣稱,這種專用解壓?jiǎn)卧?,在解壓能力上相?dāng)于9個(gè)Zen 2處理器。

  越來(lái)越多專用單元的出現(xiàn),也是通用計(jì)算領(lǐng)域向前發(fā)展的一種共識(shí)了。而且索尼自PS3時(shí)代的CELL處理器開(kāi)始,就有一個(gè)堅(jiān)持:數(shù)據(jù)傳輸?shù)母邘挕⒌脱舆t,比處理器本身的算力重要。近代GPU的發(fā)展路徑里,這的確也是英偉達(dá)與AMD的共識(shí);而從系統(tǒng)層面,將其擴(kuò)展到外存,又是這一理念的延伸。

6.png

  所以這有什么用?

  說(shuō)來(lái)說(shuō)去,難道還是游戲啟動(dòng)和場(chǎng)景加載更快而已嗎?PC界早就證明了,提升硬盤的速度并不會(huì)對(duì)游戲性能和體驗(yàn)造成什么實(shí)質(zhì)上的提升。畢竟從直覺(jué)上來(lái)看,存儲(chǔ)不能提升游戲畫質(zhì)和幀率。一般游戲,玩家看到或即將看到的畫面資源都是放在RAM中的。

  實(shí)際情況是,基于PC世界木桶短板原則,游戲開(kāi)發(fā)者極大程度受制于PC大環(huán)境的平均配置,而想盡辦法從游戲開(kāi)發(fā)層面,試圖向玩家隱藏存儲(chǔ)系統(tǒng)的短板。

  但游戲主機(jī)有著相對(duì)單一的開(kāi)發(fā)目標(biāo),硬件限制、開(kāi)發(fā)環(huán)境都大致穩(wěn)定。在主要游戲主機(jī)開(kāi)始采用SSD之后,開(kāi)發(fā)者們(或者生態(tài))就該思考如何充分利用明顯更快速的存儲(chǔ)硬件了。所以前文也提到了微軟Xbox Velocity Architecture的新API。

7.png

  索尼在這代主機(jī)上,雖然純看算力及RAM層面的效率是不及Xbox Series X的,但它針對(duì)SSD存儲(chǔ)的變革決心卻相當(dāng)之大。PS5平臺(tái)之下新的I/O API,可讓開(kāi)發(fā)者去利用新的SSD及存儲(chǔ)架構(gòu)。

  在新的開(kāi)發(fā)生態(tài)中,文件名、路徑的概念不再,取而代之的是一種基于ID的系統(tǒng)——以最快的速度告訴系統(tǒng)從哪里去找數(shù)據(jù)。開(kāi)發(fā)者只需要指定ID,開(kāi)始位置、結(jié)束位置;整個(gè)IO流程一步完成,不需要應(yīng)用去操心內(nèi)存數(shù)據(jù)解壓、重新安置的問(wèn)題。毫秒級(jí)延遲后,就能在單幀處理時(shí)間內(nèi)請(qǐng)求獲取到數(shù)據(jù)——早年的HDD,這個(gè)流程需要耗時(shí)最多250ms。

  去年3月份,PS5系統(tǒng)架構(gòu)師Mark Cerny舉過(guò)一個(gè)例子?!澳硞€(gè)敵人在游戲中死去時(shí),會(huì)最后叫出聲,這種數(shù)據(jù)需要有高優(yōu)先級(jí)來(lái)獲取。但可能因?yàn)榱魉€中其他的游戲與操作請(qǐng)求,數(shù)據(jù)仍要等250ms才能拿到?!薄岸劳?、哀嚎,是需要同步發(fā)生的。在PS4,同類問(wèn)題就要求把大量數(shù)據(jù)都必須放到RAM上?!彪m然個(gè)人覺(jué)得這個(gè)例子可能并不恰當(dāng),不過(guò)高速SSD的存在,某種程度轉(zhuǎn)移了RAM的負(fù)擔(dān)。

8.png

  這種“轉(zhuǎn)移”可能體現(xiàn)在多個(gè)方面。比如說(shuō)開(kāi)放世界游戲,通常這種游戲需要限制玩家的移動(dòng)速度,或者游戲環(huán)境沒(méi)有那么細(xì)致。因?yàn)镽AM資源是有限的,游戲只能過(guò)著緊巴巴的日子,必要的資源才放進(jìn)去。要是玩家移動(dòng)太快、畫面太細(xì)致,資源都來(lái)不及加載。但在有了高速SSD(和對(duì)應(yīng)的I/O架構(gòu))之后,開(kāi)發(fā)者就得到了極大程度的自由。

  這個(gè)自由當(dāng)然不是說(shuō)用SSD來(lái)替代RAM,而是體現(xiàn)在working set上——即每次有多少內(nèi)存是真正當(dāng)下就使用的(即現(xiàn)在就顯示在游戲畫面中的)。在高速SSD的加持下,游戲就沒(méi)那么迫切的要求去預(yù)取(prefetch)數(shù)據(jù)。

  比如一個(gè)游戲中,相同房間內(nèi)某個(gè)對(duì)象的貼圖,如果現(xiàn)在并不在游戲畫面內(nèi)(不顯示在屏幕上,而是在屏幕之外),那么或許將其放到SSD上(而不是RAM上)問(wèn)題也沒(méi)那么大,等到玩家視角開(kāi)始向該對(duì)象的方向移動(dòng)時(shí),再加載也不遲。過(guò)去HDD時(shí)代是不能這么做的,通常整個(gè)房間、甚至相鄰房間的數(shù)據(jù)都必須放在RAM里,否則游戲體驗(yàn)就是悲劇。

9.png

10.png

  有了SSD,一部分RAM就能釋放出來(lái),這些RAM可用于存放更高品質(zhì)的資源,屏幕上顯示的當(dāng)前畫面也能夠更好?;蛘邞?yīng)該是“變革”的核心所在。Mark Cerny提到,游戲只需要大約提前1秒做預(yù)取工作(而不是PS4時(shí)代的30秒),這是高帶寬、低延遲SSD能夠帶來(lái)的重要價(jià)值。

  Mark Cerny原話說(shuō):“玩家在游戲中轉(zhuǎn)個(gè)身,SSD如果足夠快,快到立馬就可加載紋理如何?如果轉(zhuǎn)身0.5秒,也就是加載4GB的壓縮數(shù)據(jù)?!边@可能是虛幻5引擎演示基于PS5的某種依據(jù),也會(huì)成為革新游戲主機(jī)平臺(tái)游戲開(kāi)發(fā)的開(kāi)始。

  SSD給游戲機(jī)帶來(lái)的其他變化

  以前的很多游戲,開(kāi)發(fā)者為了解決慢速存儲(chǔ)的限制問(wèn)題,通常會(huì)采用很多策略。比如說(shuō)場(chǎng)景間過(guò)渡,搞個(gè)樓層間電梯:玩家在乘坐電梯的時(shí)候,實(shí)際上就是數(shù)據(jù)在忙碌加載的過(guò)程;再比如在某些過(guò)渡場(chǎng)景,限制玩家視野(比如搞個(gè)狹窄的山洞或通道)。將來(lái),這些可能都不再需要了。

  前面這些至少對(duì)于游戲玩家而言,是能夠看得見(jiàn)、摸得著(可能摸不著)的革新,包括游戲啟動(dòng)、畫面加載時(shí)間顯著縮短,游戲畫面可以更細(xì)致,對(duì)玩家的限制更少,甚至可能帶來(lái)更多的玩法。比如說(shuō)開(kāi)放世界中,更快的競(jìng)速游戲體驗(yàn);或者從天文星球級(jí)別,可將畫面無(wú)縫、快速放大至分子級(jí)別;以及更多現(xiàn)在我們暫時(shí)沒(méi)想到的游戲方式。

11.png

  高速SSD及周邊存儲(chǔ)與I/O架構(gòu)還帶來(lái)了一些相對(duì)隱性的價(jià)值。比如說(shuō)游戲體積可以做得更小。游戲主機(jī)的HDD時(shí)代,開(kāi)發(fā)者為了減小硬盤尋道時(shí)間帶來(lái)的影響,某一個(gè)場(chǎng)景顯示所需的數(shù)據(jù),通常都會(huì)存儲(chǔ)在連續(xù)的硬盤塊區(qū)域上,這樣就能減少數(shù)據(jù)尋道操作了。

  不過(guò)某些對(duì)象可能會(huì)在不同的場(chǎng)景里反復(fù)出現(xiàn),那么這些對(duì)象就會(huì)重復(fù)存儲(chǔ)在各種連續(xù)的硬盤塊區(qū)域。除了貼圖,也包括聲音、模型等——這叫duplication。比如城市場(chǎng)景中的垃圾袋,可能1.6MB空間占用,如果一個(gè)城市里600個(gè)街區(qū)都有這么個(gè)垃圾袋,那就比較悲劇了。游戲在硬盤中所占的空間就會(huì)很大。某些游戲開(kāi)發(fā)者對(duì)此當(dāng)然有緩解方案,比如《蜘蛛俠》,不過(guò)是以RAM用量為代價(jià)的。

  高速SSD存在以后,duplication就很大程度上不怎么需要了。SSD帶來(lái)的同類價(jià)值還有比如說(shuō),HDD存在“碎片化”問(wèn)題,早年Windows就有“整理硬盤碎片”這種功能;在SSD之下,開(kāi)發(fā)者不需要在意數(shù)據(jù)的物理空間問(wèn)題,游戲不需要在更新過(guò)后進(jìn)行這種操作。還有包括游戲保存操作,可快速完成游戲進(jìn)度的大批量數(shù)據(jù)的存儲(chǔ),關(guān)機(jī)前也不用等待了。

  只是以上這些“隱性”提升,PC游戲玩家應(yīng)該早就享受到了,所以它們實(shí)在算不上“革命”性,對(duì)游戲體驗(yàn)的影響也都不大。

12.png

  推及整個(gè)游戲行業(yè)

  索尼和微軟在游戲主機(jī)與平臺(tái)的締造理念上差別還是比較大的。微軟更多在想的是與PC平臺(tái)劃一,而索尼則期望引導(dǎo)開(kāi)發(fā)者走他們?cè)O(shè)想中的路子。起碼在這代游戲機(jī)上,索尼對(duì)存儲(chǔ)系統(tǒng)投入的精力是顯著大于微軟的,也希望開(kāi)發(fā)者未來(lái)能夠充分利用高速SSD。

  這種思路對(duì)于整個(gè)游戲行業(yè),包括PC游戲,開(kāi)發(fā)方式的轉(zhuǎn)變會(huì)是顯著的。雖然微軟沒(méi)有過(guò)多透露Xbox Series X的存儲(chǔ)系統(tǒng)相關(guān)信息,但微軟有計(jì)劃將DirectStorage API帶到Windows平臺(tái)。

  另一方面,AMD作為跨游戲主機(jī)和PC兩個(gè)平臺(tái)的芯片制造商,也切切實(shí)實(shí)影響到了未來(lái)這兩個(gè)平臺(tái)的游戲相關(guān)硬件技術(shù)走向——SSD在游戲上發(fā)揮作用與AMD也有很大關(guān)系,這一點(diǎn)將在本文的擴(kuò)展閱讀中提到。如此一來(lái),SSD本身可能才真正開(kāi)始逐步惠及整個(gè)游戲市場(chǎng),而不只是一些不痛不癢的小變化。更多充分利用SSD特性的開(kāi)發(fā)成果也才會(huì)出現(xiàn)。

13.png

  當(dāng)然游戲主機(jī)換用高速讀取SSD也帶來(lái)了一些問(wèn)題。其中最大的問(wèn)題恐怕在于,825GB的容量有些捉急,實(shí)際可用空間667GiB左右。當(dāng)游戲以百GB級(jí)別存在時(shí),這點(diǎn)容量實(shí)在不夠看。索尼去年雖有提到可支持?jǐn)U展三方SSD,不過(guò)現(xiàn)有PC級(jí)別的M.2 PCIe 4.0固態(tài)硬盤是真的不便宜,而且還必須夠上PS5原硬盤5.5GB/s的規(guī)格。索尼似乎到現(xiàn)在也沒(méi)有公布支持?jǐn)U容的第三方SSD究竟有哪些。

  與此同時(shí),從索尼的介紹來(lái)看,與其高速SSD相關(guān)的存儲(chǔ)I/O架構(gòu)還挺復(fù)雜,起碼其定制化程度尤甚。比如說(shuō)為了減少延遲,索尼針對(duì)SSD的I/O命令,搞了一套6種優(yōu)先級(jí)的定制化特性,而NVMe標(biāo)準(zhǔn)本身的優(yōu)先級(jí)特性沒(méi)這么多。索尼的定制I/O單元雖然可以處理這個(gè)問(wèn)題,但需要額外的開(kāi)銷。

  不過(guò)總得來(lái)說(shuō),這些在開(kāi)發(fā)變遷的過(guò)程中,始終都算是小問(wèn)題。無(wú)論如何,未來(lái)主機(jī)游戲,乃至PC游戲的走向大約都將因SSD產(chǎn)生真正的變化,這是以前PC廣泛應(yīng)用SSD未能達(dá)到的。有關(guān)PS5的I/O架構(gòu),歡迎點(diǎn)擊查看原文,閱讀本文的網(wǎng)頁(yè)完整版了解更多。

  

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。