在 Fedora 中使用 Matlab 时出现的“硬件错误”真的是硬件问题还是软件问题?

在 Fedora 中使用 Matlab 时出现的“硬件错误”真的是硬件问题还是软件问题?

当我在Fedora 20中使用Matlab 2012时,在fft计算或绘制图形期间或之后,经常发现以下问题。

以下是错误按摩:

[  635.157606] mce: [Hardware Error]: CPU 4: Machine Check Exception: 4 Bank 0: b650200000000135 
[  635.157606] mce: [Hardware Error]: TSC 22cd709f356 ADDR 5989fdd80
[  635.157606] mce: [Hardware Error]: PROCESSOR 2:100fa0 TIME 1462430327 SOCKET 0 APIC 4 microcode 10000dc
[  635.157606] [Hardware Error]: MC0 Error: Data/Tag DRD error.
[  635.157606] [Hardware Error]: Error Status: System Fatal error.
[  635.157606] [Hardware Error]: CPU:4 (10:a:0) MC0_STATUS[-|UE|-|PCC|AddrV|UECC]: 0xb650200000000135
[  635.157606] [Hardware Error]:MC0_ADDR: 0x00000005989fdd80 
[  635.157606] [Hardware Error]: cache level: L1, tx: DATA, mem-tx: DRD
[  635.157606] mce: [Hardware Error]: Machine check: Invalid
[  635.157606] Kernel panic - not syncing: Fatal machine check on current CPU
[  635.157606] Kernel Offset: 0x0 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffff9fffffff)
[  635.157606] drm_kms_helper: panic occurred, switching back to text console

是由于软件(即Matlab)还是硬件(即CPU,我的CPU是AMD X6 1055T)所致?我怎么解决这个问题?

答案1

这是硬件错误。具体来说,这是一个已检测到但未纠正的 ECC 内存错误。你怎么知道?将上面的输出通过管道传输mcelog --ascii,您将得到:

Hardware event. This is not a software error.
CPU 4 0 data cache TSC 22cd709f356 
ADDR 5989fdd80 
TIME 1462430327 Thu May  5 02:38:47 2016
  Data cache ECC error (syndrome a0)
       bit45 = uncorrected ecc error
       bit57 = processor context corrupt
       bit61 = error uncorrected
  memory/cache error 'data read mem transaction, data transaction, level 1'
STATUS b650200000000135 MCGSTATUS 4
CPUID Vendor AMD Family 16 Model 10
SOCKET 0 APIC 4 microcode 10000dc

(请注意,对于不包含该PROCESSOR行的旧内核消息,您需要了解并指定实际系统上使用的 CPU 类型。但是使用该行,在我的系统上运行输出应该给出与您相同的结果获取本地)。

答案2

在我看来像是硬件错误,CPU 或内存。如果您可以使用另一个 CPU 或交换 PC 中的内存,或者在另一台机器/CPU 上尝试相同的操作,则可以排除硬件故障。
此外,您还应该更新 BIOS 和其他硬件的固件,这可能会有所帮助。有时,CPU 微代码会通过 BIOS 更新进行刷新,这可以消除内存/CPU 错误。

相关内容