内存太多用不完?用来装游戏吧
“游戏读条是两代玩家的共同记忆,随着新一代主机SSD的性能飞跃,其有望成为历史”
切慢,我一个机械硬盘用户首先就不同意。除非未来固态降价到0.3元/T,不然游戏装固态里还是有些奢侈的。毕竟2077,飞行模拟都是100G起步的游戏,将来1T硬盘可能只能同时安装9个游戏....
不扯远了,某些几十G的游戏,在机械硬盘下读条速度慢得惊人...例如辐射4的加载过程:
辐射4加载时会同时加载一个3D模型,玩家可以自由观察这个模型以打发时间。然而,多数时候加载这个模型就需要十几秒....
我觉得这不合理,明明内存CPU GPU都是目前高端型号,结果有几个游戏就专卡着我的机械慢慢加载。人家育碧全境封锁十秒钟能传送,辐射4就得半分钟以上....浪费时间就是浪费生命,如果没有游戏读条我就能省下时间,不写这篇文章了....
所以没办法,现在有两个方案供我选择——转移到系统盘,或者外挂硬盘盒。
选择第一个方案,我的pm981a就没多少空间了。写入放大不说,移动各个平台的库是不可避免的。而第二个方案,手头1T的雷电硬盘盒确实可用。恩,我买1T雷电SSD就是为了打游戏,因为游戏需要超高速的读写性能。
看着显卡坞那仅有的22Gbps带宽,还是不要难为雷电3了。没办法,只能对内存开刀了。
如何用内存加速游戏
内存作为直接与CPU通讯的存储设备,论速度是无可匹敌的。唯一的缺点就是内存价格有些贵,好在这一块成本已经支付。
另外内存读写不会损坏内存,因为无时无刻内存不在进行读写——只要通电内存就在不断的写入以保证数据不会丢失。而固态不一样,移动游戏会有实打实的写入。为了将内存虚拟为磁盘,需要软件进行控制,这里使用开源软件ImDisk。
开源软件ImDisk
ImDisk以及相应的GUI工具统称ImDisk-Toolkit,当然你也可以只使用命令行进行操作。软件有打包好的可以直接下载,也可以通过choco进行安装。运行软件需要管理员权限,GUI名称为Ramdisk configuration,打开后软件界面如下:
因为使用RAM做虚拟硬盘,盘符就选择的R——这样也不会和现有的硬盘冲突(不会有人有十几个硬盘吧)。以我电脑为例,使用一段时间后电脑使用了16GB的内存,那么不影响性能的情况下最高可分配64-16=48GB的空间给虚拟磁盘。实际分配体积需要根据游戏大小确定,毕竟是用于加速游戏的。
分配20GB作为虚拟磁盘进行演示:
第二个问题是如何加速游戏文件,对电脑有了解的人会想到intel的一个产品——optane傲腾技术。optane简单来说就是用一个ssd给机械硬盘加速。例如与windows开机有关的文件都储存在optane中,这样机械硬盘也能体验到十秒开机的快感。
我们需要手动模拟这样的过程,将游戏的图片数据储存在R盘中,并做个软链接过去。这一操作在linux下很常见,命令为ln,而windows下为mklink。
mklink的使用
mklink是CMD下的一个命令,需要管理员权限运行。基本使用有两个,第一个是将文件F从目录A1软链接到目录A2。此时文件并不储存在A2目录下而是储存在A1目录下。但软件会识别到A2目录下有这个F文件。
例如通过如下命令在D盘steam游戏目录内创建一个软链接,源文件为R盘的这个文件:
mklink "D:Steam/steamapps/common/Fallout 4/Data/Fallout4 - Textures1.ba2" "R:Fallout/Fallout4 - Textures1.ba2"
要想成功运行该命令,需要D盘相应目录不存在Fallout4 - Textures1.ba2,R盘相应目录存在Fallout4 - Textures1.ba2。所以实际操作需要三步:
cp "D:Steam/steamapps/common/Fallout 4/Data/Fallout4 - Textures1.ba2" "R:Fallout/Fallout4 - Textures1.ba2"
mv "D:Steam/steamapps/common/Fallout 4/Data/Fallout4 - Textures1.ba2" "D:Steam/steamapps/common/Fallout 4/Data/Fallout4 - Textures1.ba2.bak"
cmd mklink "D:Steam/steamapps/common/Fallout 4/Data/Fallout4 - Textures1.ba2 "R:Fallout/Fallout4 - Textures1.ba2"
这三个命令意思是移动D盘游戏文件到R盘,随后修改D盘游戏文件的名称,再将R盘的游戏链接到原来的位置。当然,别忘记关闭mklink后把文件名修改回来。不过大家用的Windows 10,不是DOS系统。直接选中文件,鼠标拖过去就行,也没必要真一个个输入命令。至于修改文件名,直接新建个文件夹拖进去就好了。
但万一游戏给你弄十几二十个单独的文件:
超过1GB的文件就有十四个,也就是你需要运行14次mklink命令
看一下辐射4的数据包——只要34GB的大小:
这个时候就应该用第二个方案,直接软链接整个文件夹。链接文件夹只需要在mklink后加入/D参数:
mklink /D "D:Steam/steamapps/common/Fallout 4/Data" "R:Fallout"
当然,在软链接之前别忘记把整个Data文件夹复制到R盘,然后修改一下原本的Data文件夹名称。
若游戏数据包太大,R盘放不下。那就只能手动复制粘贴mklink了。当然如果你会PowerShell脚本,这并不是什么难事。以《刺客信条奥德赛》为例——
游戏数据主要在一个20G大小的文件中,大于1GB的数据也仅有6个,合计42GB。如果内存仅有32G,自然选择创建一个21G的分区对第一个文件加速,如果内存有48G,那么第一第二个文件都可以装下。如果内存更多,这五个文件都可以加速。
当然,mklink也适用于使用固态硬盘进行加速。虽然每次打游戏都要调整一下文件创建mklink,但这比移动steam库还是快多了。
实际游戏测试
我以两个游戏为例进行加速情况的测试。第一个是《辐射4》,加速方法为链接整个Data文件夹。而第二个游戏是《奥德赛》,链接大于1GB的文件。测试方法为进行数分钟游戏之后,从特定地点快速移动到特定地点(最开始的几分钟游戏不在这两个地点附近)。对于辐射4,是从铁道总部移动到剑桥警察局门口(从贴图少的位置到贴图多的城市),而对于奥德赛是从新手村宙斯神像移动到雅典。快速移动所需时间测试三次,取最低值作图。
同时也对使用内置C盘加速的情况进行测试,最终加载时间比较的是RAM-SSD-HDD这三种情况。
结论
辐射4偶尔加载不显示模型,HDD在此时的加载时间较少,需要32.75以及33.06秒。而同时加载模型需要50.76秒。使用内存加速所需时间减少到20秒出头,且是否出现模型对世界影响不大。固态SSD加速所需时间略微多一些,需要21秒。奥德赛因为游戏贴图更加精细,所需时间也更长,整体趋势保持一致。
尽管从内存中加载相比SSD可以略微减少所需时间,但幅度仅有个位数%。另外占据内存后对游戏也会有负面影响——毕竟开发商可以根据玩家内存进行优化。可用内存越多,保留的贴图数据也就越多。这一现象在测试中也有所体现,使用SSD加速的奥德赛,重复快速移动(雅典-宙斯-雅典)所需时间仅为16秒。原因可能是部分贴图数据还储存在内存中,因此并不需要重复加载。
使用内存加速对CPU的影响也并不太大,快速读取内存中数据并不消耗多少CPU。
那用内存做游戏加速,有用吗?有用。但加速效果和SSD相差无几,但占用一部分内存后对整个系统的影响是负面的。除非你的C盘真的塞得满满当当,不然使用SSD进行加速综合体验会远好于内存。另外因为内存断电即丢数据,内存加速时游戏文件一定要有备份。而SSD加速因为文件储存在硬盘上,可以放心重启后继续使用。对于某些大小上百GB的游戏,玩家可以通过mklink针对性加速贴图文件,而使用频率较低的视频、音频文件则可以继续留在机械当中。
例如大小98.5G的刺客信条奥德赛,最主要的几个文件只有40GB出头。这样一来安装仅需要使用40G的SSD以及60GB左右的机械,就能获得80%的性能提升。而34G大小的辐射4,去掉声音以及视频也只需要20G的空间用于加速主要的纹理文件。
所以虽然大家可能真的用不上内存虚拟硬盘进行加速这样的操作,但使用SSD+HDD混合安装游戏是个不错的解决方法。一些游戏本提供1T固态+2T机械的空间,游戏安装在机械中太慢,安装在固态中又太奢侈。自己手动做一个“混合硬盘”就能同时用上两个盘。
写在最后
随着RTX3090的发布,22GB的显存用来做虚拟磁盘岂不更好?Github上有人另外提供了一个显存虚拟磁盘的软件:GPURAMDrive。你可以在3090上安装孤岛危机进行游戏——前提是你要有两个3090 sli。
小楼昨晚又断网
校验提示文案
ak747
校验提示文案
王巨圈
校验提示文案
没钱网友
校验提示文案
值友1514983287
校验提示文案
pindleskin
校验提示文案
norsky
校验提示文案
星辰Starsun
校验提示文案
艾德文
校验提示文案
啥都想买的乐人
校验提示文案
zsbd
校验提示文案
benjaminliang
校验提示文案
喵小开
校验提示文案
ndragon50
校验提示文案
采花小棉花
校验提示文案
0110_1101
Win10 存储池 分层存储(请用PowerShell)…
intel CAS…
校验提示文案
Karl说数
校验提示文案
LIIGEAR
校验提示文案
九十度一
校验提示文案
诺呀
校验提示文案
艾德文
校验提示文案
色熊一只
校验提示文案
有一点宅
校验提示文案
小桃吱
校验提示文案
小桃吱
校验提示文案
满票来进图死
校验提示文案
值友6804612040
校验提示文案
littlelincoln
校验提示文案
wxl119
校验提示文案
Kashiko
校验提示文案
夏天好冷
校验提示文案
AlexMahoneFBI
校验提示文案
神马值得吗
校验提示文案
星辰Starsun
校验提示文案
sexychina
校验提示文案
小小依濛他爸
校验提示文案
值友7067843142
校验提示文案
ndragon50
校验提示文案
崩得儿你个崩得儿
校验提示文案
norsky
校验提示文案