1 단계

1 단계

Ubuntu 14.04 LTS를 실행하는 불안정한 컴퓨터가 있고 9시간 동안 memtest86을 통과했습니다.

나는 이것을 얻습니다 :

Hardware event. This is not a software error.
MCE 0
CPU 1 BANK 0 
TIME 1414735539 Fri Oct 31 17:05:39 2014
MCG status:
MCi status:
Corrected error
Error enabled
MCA: Internal parity error
STATUS 9000004000010005 MCGSTATUS 0
MCGCAP c09 APICID 2 SOCKETID 0 
CPUID Vendor Intel Family 6 Model 58`

이것은 기계가 계속 작동하는 때입니다. 기계가 얼었을 때 아직 하나도 없었습니다.

"MCE 0"이란 무엇입니까? 그리고 "MCA"는요? CPU 오류인가요, 아니면 RAM 오류인가요?

8GB RAM이 장착된 스틱이 있습니다.

하드웨어(RAM, CPU, 마더보드, 전원 공급 장치)를 어떤 순서로 교체해야 합니까? 이전에는 기계가 매우 안정적이었습니다. CPU 전압을 조금 높여야 할까요?

mcelog FAQ를 읽었습니다. Google 결과는 드물고 대부분 다른 형식(예: 이전 버전의 커널/MCE)으로 유사한 메시지가 있습니다.

답변1

mcelog가 MCA 상태 레지스터를 일부 디코딩하지만 더 많은 디코딩이 도움이 될 수 있습니다.

1 단계

다음 링크에서 결합된 인텔® 64 및 IA-32 아키텍처 소프트웨어 개발자 매뉴얼을 다운로드하세요.http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html 3439 페이지로 구성되어 있으며 엄청납니다. 다음은 2014년 9월 버전을 나타냅니다.

2 단계

/var/log/mcelog에서 STATUS 단어를 가져와서 xxd를 통해 몇 번 전송하여 비트 필드를 가져옵니다. 나에게 이것은 다음과 같다:

$ echo "9000004000010005" | xxd -r -p | xxd -b
0000000: 10010000 00000000 00000000 01000000 00000000 00000001  ...@..
0000006: 00000000 00000101                                      ..

3단계

일부 텍스트 조작을 수행한 다음 비트에 번호를 매깁니다.

66665555 55555544 44444444 33333333 33222222 22221111 111111 
32109876 54321098 76543210 98765432 10987654 32109876 54321098 76543210
-----------------------------------------------------------------------
10010000 00000000 00000000 01000000 00000000 00000001 00000000 00000101 

4단계

매뉴얼 섹션 15.3.2.2에서 상태 MCi 상태 레지스터 비트 정의를 추출합니다.

MCi 상태 레지스터 비트

내 경우 비트 3:0은 "MCA 오류 코드 5"를 의미하며 mcelog는 이를 "내부 패리티 오류"로 해석했습니다(섹션 15.9.1 참조). 더 많은 정보를 원합니다. CPU, RAM 또는 마더보드가 패리티 오류의 원인일 수 있습니까?

비트 63의 1은 단순히 "이 레지스터 값이 유효함"을 의미합니다. 비트 60의 1은 단순히 "오류 보고 활성화"를 의미합니다. [52:38] = 1 값은 오류가 수정되었음을 나타냅니다.

비트 16의 1은 "모델별 오류 코드" 필드에 있으므로 유망해 보이지만 섹션 16에 따르면 비트[15]는 0이므로 내가 얻는 것은 "단순"(복합이 아닌) 오류이므로 난 끝났어.

요점: 패리티 오류가 캐시에서 발생하는지 시스템 메모리에서 발생하는지 알 수 있는 방법이 없습니다. "내부"가 무엇을 의미하는지 알 수 없습니다. 안에 무엇이 들어있나요? 그래서 동일한 문제로 메모리를 교체한 다음 CPU를 다른 컴퓨터(행운의 호환 가능한 소켓)로 교체했더니 두 컴퓨터 모두에서 문제가 중지되었습니다. 이 고급 하드웨어에서 내가 기대했던 정확한 진단 지원은 아니었고 "나쁜" CPU가 다른 컴퓨터에서는 왜 만족스러운지 이해하지 못했지만 문제는 해결되었습니다.

답변2

함께 있을 수도 있음인텔 에라타 HSW131(또는 유사) 이는 허위이며 무해한 MCA 05(내부 패리티 오류) 오류입니다.

해결책: 무시하십시오.

답변3

32비트에서 프로세스를 실행하고 있습니까? ? ?

다음 사이트에서 "내부 패리티 오류" 검색에 대한 자세한 내용을 확인하세요.

http://www.intel.com/content/dam/www/public/us/en/documents/specation-updates/4th-gen-core-family-desktop-specation-update.pdf

http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf

HSD55. Internal Parity Errors May Incorrectly Report Overflow in The IA32_MCi_STATUS MSR
    Problem:
    Due to this erratum, uncorrectable internal parity error reports with an
    IA32_MCi_STATUS.MCACOD (bits [15:0]) value of 0005H and an
    IA32_MCi_STATUS.MSCOD (bits [31:16]) va
    lue of 0004H may incorrectly set the
    IA32_MCi_STATUS.OVER flag (bit 62) indicating an overflow even when only a single
    error has been observed.

CentOS 7(x64)에서 32비트 Linux KVM 시스템을 실행하는 Haswell i7-4790(4세대)에서 동일한 문제가 발생합니다.

http://ark.intel.com/products/80806/Intel-Core-i7-4790-Processor-8M-Cache-up-to-4_00-GHz

답변4

저는 Intel i5-3550(Ivy Bridge)이 탑재된 Linux 상자를 실행하고 있으며 실제로 한동안 이 문제를 겪었습니다(동일한 상태 값). 이는 코어 2와 3에만 영향을 미치며(대부분의 유일한 코어 2는 영향을 받음) 따라서 하드웨어가 죽었을 가능성이 높으며 몇 주 동안 비활성화될 것이라고 가정합니다.

평균 작동 온도가 평소보다 높았지만 청소 후에도 문제가 지속되었습니다. 이는 MCE 오류 메시지뿐만 아니라 예측할 수 없는 분할 오류 및 실행 중인 프로세스의 충돌로도 나타납니다.

글쎄요, UEFI는 사양에서 최대 3.7GHz까지만 올라갈 수 있다고 말했을 때 몇 가지 이해할 수 없는 이유로 터보 모드에서 CPU 클럭 속도를 약 4.1GHz로 높이기로 결정한 것으로 나타났습니다. 이러한 제한을 수동으로 재구성하면 문제가 해결된 것 같습니다.


요약: 이 글을 읽는 분들은 오버클러킹도 확인해 보세요.

관련 정보