对由CPU故障引起的程序崩溃问题的排查与缓解


1. 故障引起的现象

  1. KOOK客户端在启动时或使用中,出现崩溃、闪退
  2. 游戏程序、其他程序的崩溃:比如黑神话悟空在首次启动中遇到错误(编译着色器时报错):无畏契约游戏中途闪退等
  3. 电脑随机蓝屏、死机、黑屏重启
  4. 事件查看器的日志中发现大量程序崩溃、停止响应的记录(比如使用几个小时就出现十几个,甚至几十个崩溃记录。示例看下图)
(在Windows开始菜单按钮上右键 → 事件查看器) 

2. 引起故障的可能原因

对技术细节没有兴趣的小伙伴可以跳过这部分,直接阅读下一章。
当代主流的CPU,都会加入TurboBoost、PBO之类的技术,来在保持长期稳定可靠这个预期的前提下,自动地、动态地、尽可能大幅度地提升CPU的主频,来达成尽可能高的性能。而在CPU自己提升主频的过程中,硬件层面如果有任何环节的处理不当,就会引起CPU核心的不稳定,从而导致部分计算出错。此时运行在不稳定CPU核心上的程序就会崩溃,如果系统的核心程序也运行在上面,那么系统就会蓝屏甚至黑屏。
KOOK因所使用技术构架(基于Electron框架)的特点,整体的CPU负载会更倾向于单线程负载,这会导致CPU更加倾向于大幅度提升自己的主频,以至于更容易进入不稳定的状态。从而出现KOOK似乎更加容易崩溃的现象。
至于为何会出现“曾经是可以稳定使用的,但最近开始就出现崩溃了”这个现象,是因为CPU在使用中也是会有“损耗”的,这个过程可能是1年,可能是10年或更久。所以,出现此类故障的CPU都是在使用了一段时间后才出现的故障。

3. 此故障可能涉及的CPU型号

从我们接触到的真实案例来说,以下CPU可能存在稳定性问题:
  1. Intel 13代的13600、13700、13900系列,K/KF/KS后缀的CPU
  2. Intel 14代的14600、14700、14900系列,K/KF/KS后缀的CPU
从占比来说,13900和14900系列最多。
如果你正在使用以上几款CPU,且遇到了第一章提到的故障现象,且也没有进行硬件超频,那么有可能遇到了硬件故障。

4. 故障的验证确认

从经验来说,可以通过一系列快速简短的测试来确定问题是否存在。

4.1. 测试前,请先知晓

  1. 测试中,任意一个测试出现报错,甚至出现了蓝屏、死机或自动重启,这都表示硬件存在稳定性问题。
  2. 这些测试都是偏向于测试CPU,出错就表示CPU大概率有稳定性问题,但可能无法作为故障的证据。
  3. 在不稳定的电脑上,可能会造成死机,所以在测试前请保存好数据,避免数据丢失。
  4. 这些软件测试一般都是安全的,但在极端情况下(比如CPU进行了超频且给了很高的功耗限制和电压,散热有故障等),可能会对硬件造成损伤。这部分的风险需要你自己承担。

4.2. 测试方法

4.2.1. 7-Zip的基准测试

运行7-Zip,依次选择【工具】→【基准测试】→ 点击上方【开始】按钮。
正常情况下,该基准测试会运行10轮。如果有异常,期间就会弹出错误提示。

4.2.2. AIDA64的FP64测试

请运行10次。注意:该测试时间短,但是负载很高。
在运行期间出现以下几种情况,则表示有硬件稳定性问题:
  1. 黑屏重启
  2. 蓝屏或蓝屏重启
  3. 测试有结果,但结果为0

4.2.3. Cinebench R15

请运行10次。
在运行期间出现以下几种情况,则表示有硬件稳定性问题:
  1. 黑屏重启
  2. 蓝屏或蓝屏重启
  3. 测试程序出现报错提示

4.2.4. Intel® Processor Diagnostic Tool

Intel的官方诊断测试程序。但从经验来说,仅作补充测试用。

4.2.5. 其他测试程序

如果你是一位富有经验的DIYer,那么可使用你顺手的测试工具集进行测试,Prime 95的SmallFFT测试、CB R2024等,都是不错的测试手段。

5. 故障的缓解

如果你在上述测试中,确定了故障的存在,那么可以尝试以下办法来缓解CPU稳定性问题:
  1. 如果你的电脑有超频,包括但不限于CPU超频、任何的降电压、内存超频(包括开XMP)、显卡超频等,建议先恢复默认后再测试一次。
  2. 在BIOS或者Intel的XTU中,降低P核心(高性能核心)的主频,比如降低至5.0GHz。这个方法,目前来看,对缓解各式程序崩溃是很有效的。但需要提醒一点,降低主频后,游戏性能会有些许下降。
注意:因为这类故障是硬件层面的,所以它是不可逆的,且是在应用程序层面无法解决的。所以只能缓解问题,而不能解决或修复问题。
KOOK KOOK
23 天前
665

扫描下方二维码手机阅读文章

1 3