如何确定 Linux 系统高压力下导致硬件锁定的组件?

如何确定 Linux 系统高压力下导致硬件锁定的组件?

我有一台可以称之为“坚如磐石”的电脑。我连续几个月运行它而不需要重新启动,并且在多个工作空间中一直打开许多程序、选项卡等。没有稳定性问题。

最近,我一直在尝试使用 Blender 进行 3D 艺术创作。Blender 在我的计算机上大部分情况下运行良好,但使用启用了 CPU 渲染的 Cycles 渲染引擎会在几秒钟内锁定整个计算机,需要重新启动。(ctrl+alt+backspace 不起作用)。

由于只有 Blender 有问题,我将其报告为错误,他们让我运行mprime(有时称为 prime95)。我使用了“压力测试”选项和测试类型 3“blend”,它也在几秒钟内冻结了我的计算机。

因此,我的计算机存在一些问题,导致它在执行(极其)占用 CPU 的某些操作时冻结,但这不会对日常工作造成任何问题,并且只要我不尝试使用 mprime 或 cycles render 之类的程序,计算机就可以连续运行数月。

附带问题:一台正常运行的计算机应该能够mprime毫无问题地运行,对吗?连续运行?

我想将 Blender 与 Cycles 一起使用,所以我想确定问题的原因。

我已经尝试运行 memtest86 12 小时,没有出现任何错误,所以问题可能不是系统内存。我还将操作系统版本从 Mint 18 更改为 19,其中(可能)包含一个新内核,所以问题可能不是与内核相关的。

剩下的就是:

  1. 处理器故障
  2. 主板故障
  3. 低级软件,例如主板固件或处理器驱动程序
  4. 还有别的吗?

除了互换部件(CPU 价格昂贵,不可退货)外,还有其他方法可以确定我是否需要更换主板和 CPU,还是只需更换 CPU?或者是否可以通过软件/固件更新来修复此问题?

我正在寻找一个有经验的答案,例如“如果发生这种情况,那总是 CPU 而不是主板的问题”或“可能是其中之一,但肯定是硬件需要更换,软件/固件更新不会有帮助”或“硬件没问题,只需要更多的冷却”等。

更新

我尝试在 mprime 上使用 CPU 限制。我设置了 10% 的限制:

cpulimit -P ~/mersenne-stress-test.linux64/mprime -l 10

然后运行该程序。cpulimit启动时检测到了 mprime,但当我告诉 mprime 运行时,计算机立即冻结。因此,要么是 mprime 绕过了 CPU 限制,要么是我遇到的问题不受 CPU 资源限制的影响。即。它可能正在尝试执行 mprime/cycles 使用 CPU 的某种类型的操作,而办公程序则不会。

更新 2

其他系统信息:

Operating system: Linux Mint 19.1, Mate, 64 bit
Graphics card: GeForce GTX 760, 4096 MB, proprietary NVIDIA Driver Version: 410.93
CPU: AMD FX-8150 Eight-Core Processor, 3.6 Ghz
Motherboard: ASUSTeK M5A99FX PRO R2.0
RAM: 2x4GB (8gb total) Corsair DDR3, 1600, Memtested OK

更新 3

更多故障排除信息:

我买了另一台具有相同处理器的计算机(计算机 B)。它运行的是 Windows。我在那台计算机(B)上测试了 Blender,它运行良好。因此,接下来,我在 A 和 B 之间交换了处理器,在此过程中清洁并涂抹了新的导热膏。

这就是事情变得奇怪的地方。计算机 B(运行 Windows,配备 A 的处理器)似乎可以很好地与 Blender 配合使用。

计算机 A 原本运行 Linux,安装了计算机 B 的处理器后,现在将运行 mprime,系统不会冻结。但是,过了一会儿,我得到了:

[Worker #7 Mar 7 15:08] ERROR: ILLEGAL SUMOUT
[Worker #7 Mar 7 15:08] Possible hardware failure, consult readme.txt file, restarting test.

这个过程快速重复,直到停止了那个核心。然后另一个核心做了同样的事情。然后它运行了一段时间,最终以分段错误结束,但计算机没有死机。

[Worker #5 Mar 7 15:16] Self-test 640K passed!
[Worker #5 Mar 7 15:16] Test 1, 3200000 Lucas-Lehmer iterations of M172031 using AMD K10 type-1 FFT length 8K, Pass1=32, Pass2=256, clm=4.
[Worker #1 Mar 7 15:16] Self-test 640K passed!
[Worker #1 Mar 7 15:16] Test 1, 3200000 Lucas-Lehmer iterations of M172031 using AMD K10 type-1 FFT length 8K, Pass1=32, Pass2=256, clm=4.
[Worker #4 Mar 7 15:16] Self-test 640K passed!
[Worker #4 Mar 7 15:16] Test 1, 3200000 Lucas-Lehmer iterations of M172031 using AMD K10 type-1 FFT length 8K, Pass1=32, Pass2=256, clm=4.
[Worker #3 Mar 7 15:16] Self-test 640K passed!
[Worker #3 Mar 7 15:16] Test 1, 3200000 Lucas-Lehmer iterations of M172031 using AMD K10 type-1 FFT length 8K, Pass1=32, Pass2=256, clm=4.
[Worker #2 Mar 7 15:16] Self-test 640K passed!
[Worker #2 Mar 7 15:16] Test 1, 3200000 Lucas-Lehmer iterations of M172031 using AMD K10 type-1 FFT length 8K, Pass1=32, Pass2=256, clm=4.
[Worker #8 Mar 7 15:19] Self-test 8K passed!
[Worker #8 Mar 7 15:19] Test 1, 21000 Lucas-Lehmer iterations of M14155777 using AMD K10 type-2 FFT length 720K, Pass1=320, Pass2=2304, clm=4.
[Worker #5 Mar 7 15:21] Self-test 8K passed!
[Worker #5 Mar 7 15:21] Test 1, 21000 Lucas-Lehmer iterations of M14155777 using AMD K10 type-2 FFT length 720K, Pass1=320, Pass2=2304, clm=4.
Segmentation fault (core dumped)

这很奇怪,因为两台计算机在交换处理器后似乎都没有冻结,但系统 A 仍然发生了一些奇怪的事情(至少)。

我想下一步是在 windows 上尝试 mprime,看看是否运行正常,或者ILLEGAL SUMOUTmprime 是否正常。

相关内容