21CTO导读:Linux内核已经到达7.3版本,其中新增了一项面向游戏玩家的优化技术,可解决8GB显存设备玩游戏时容易爆显存的问题。
Vock开发的这个补丁从根本上改进了Linux系统的显存管理,它可以让那些显存需求超过显存实际容量的游戏能流畅运行而不崩溃,以往遇到这种情况游戏要么报错崩溃,要么性能严重受限,也就是爆显存导致的性能暴跌,游戏基本上没法玩了。
有用户在《Indiana Jones: The Great Circle》游戏中做了实际测试,系统配置是8GB显存,游戏显存需求设定为9GB,也就是超过1GB需求,但游戏平均帧时间也只有19.6ms,游戏帧数大约是51帧,流畅可玩。
就算把显存需求提升到10GB,帧时间也有29.8ms,相当于34帧的性能,依然能玩,而不是崩溃。
总而言之,显存不足的情况究竟如何?我认为影响不大!
在很多情况下,即使释放 1GB 甚至更多的显存,你仍然能保持相当高的性能,这着实令人惊讶!当然,这只是比较乐观的情况,如果某些不合适的内存被释放到 CPU 内存中,很快就会导致严重的性能下降。内存释放很难做到恰到好处,而且性能总会在一定程度上受到影响。
如果一款游戏即使所有数据都加载到显存中也难以达到 30fps,那么在此基础上再释放一些内存,有时就不可避免地会导致无法达到 30fps 的目标。
无论如何,我希望这篇文章能够说明,即使最终有一些内存被释放到系统内存中,性能下降也是可以控制的。
驱动程序(尤其是内核驱动程序)可以采取一些措施来尽可能加快内存超额分配的速度,应用程序也可以与驱动程序堆栈协调,从而减轻性能下降的影响。内存被移除的影响。
一切就绪后,显存超额分配其实并没有乍一看那么严重。
作者:洛逸
参考:
Natalie Vock 的BLOG:
https://pixelcluster.dev/VRAM-Mgmt-fixed/
本篇文章为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 微信公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。