前阵子我家那台老电脑出了个怪毛病,看在线电影的时候画面拖影,声音一卡一卡的,像老式收音机信号不好那种滋啦声。更邪门的是,玩穿越火线这种射击游戏,枪口冒火那一下能卡成慢动作,脚步声和枪声完全对不上拍子。但奇怪的是,玩其他游戏,比如英雄联盟或者单机版的植物大战僵尸,又都流畅得很,一点毛病没有。
先说看电影卡这事,很多人第一反应是网速不行。我特意测了网速,下载速度每秒十二兆,上传也有四兆,看4K片源都绰绰有余。可实际上连看720P的电视剧都卡,这就排除了网络带宽的问题。后来我打开任务管理器瞄了一眼,发现CPU占用率只有百分之三十几,内存用了不到一半,但磁盘那一栏经常显示百分百占用。这就奇怪了,机械硬盘虽然慢,也不至于读个缓冲数据就卡成这个德行吧。
挨个排查下来,问题出在显卡驱动上。我这块GTX 1060是前年买的,一直用的出厂驱动,从没更新过。那天顺手下了个最新的驱动装上,重新开机再试,看电影那叫一个丝滑。原来老的驱动和现在的视频解码标准不太兼容,特别是现在很多视频流都是HEVC编码,老驱动处理这种格式解码,效率低得可怕,自然就卡了。
不过玩CF卡的问题,比看电影复杂得多。按理说GTX 1060带CF这级别的小游戏,特效全开都能跑到一百五十帧以上,可实际玩起来,帧数波动特别大,有时从一百多突然掉到三四十,然后声音就开始一卡一卡的。我之前以为是散热问题,拿测温枪一测,显卡温度七十六度,CPU六十二度,都还在安全范围内。
后来我翻了不少论坛,有个老哥提醒了一句,说CF这游戏用的引擎比较老,对多核CPU的优化特别烂,反而更吃单核性能。我打开任务管理器一看,玩CF的时候,CPU四个核心,只有一个核心占用率蹦到百分之九十多,其他三个核心都闲着。这下明白了,我的高频单核睿频不够,特别是窗口模式下,后台还有杀毒软件、浏览器这些进程在抢占那个核心的资源,一有波动就卡顿。

解决办法倒也简单粗暴。玩CF之前,把所有后台软件全关了,连输入法都换成纯英文模式。然后把游戏设置里的画面缓冲调到最低,垂直同步关掉。这么一折腾,帧数果然稳住了,声音也不卡了,基本稳定在一百二十帧左右。后来听一个搞硬件的朋友说,CF对屏幕刷新率特别敏感,如果用六十赫兹的显示器,游戏帧数超过六十就没意义,反而会造成画面撕裂和声音不同步。我换了台一百四十四赫兹的显示器之后,彻底绝了这个病根。
还有个冷知识,内存频率也要注意。我之前用的是两根不同频率的内存条,一根三千二,一根两千六,系统会自动降频到两千六运行。玩CF这种对内存延迟敏感的游戏,时序一乱,声音数据包传输就会滞后。索性换了两根同品牌同频率的套条,问题自然消解了。
说到这儿你发现了没,看电影卡和玩CF卡,根源完全不同,一个是显卡驱动不匹配,一个是单核性能被拖累。但二者的共同点在于,都不是硬件坏了,而是软硬件之间没搭配好。所以遇到类似情况,别急着花钱换配件,先看看驱动版本、后台进程、内存兼容性这几样东西。很多时候,花小钱甚至不花钱也能解决大麻烦。
现在这台老电脑,看电影不卡了,CF也稳了。我这几个月折腾下来,倒也算积累了点经验。如果你的机器也出现类似的情况,不妨按我说的这几个方向去排查,说不定半天工夫就搞定了。