NVIDIA GPU 가속 EC2 Linux 인스턴스의 Xid 오류 문제를 해결하려면 어떻게 해야 하나요?

5분 분량
0

NVIDIA GPU 가속 Amazon Elastic Compute Cloud(Amazon EC2) Linux 인스턴스에서 애플리케이션을 실행하면 애플리케이션이 충돌합니다. 또한 시스템 로그에서 GPU 관련 Xid 오류가 발생합니다. GPU에서 진단 정보를 검색하고 GPU 관련 Xid 오류를 해결하려고 합니다.

해결 방법

참고: 다음 해결 방법은 G4, G5 및 G6 인스턴스 유형의 문제를 해결합니다. GPU는 모든 GPU 가속 EC2 인스턴스 패밀리의 게스트 인스턴스로 전달됩니다.

nvidia-smi 진단 검색

nvidia-smi 도구를 사용하여 인스턴스에 연결된 NVIDIA GPU의 상태 및 성능에 대한 통계 및 진단을 검색할 수 있습니다. NVIDIA GPU 드라이버는 자동으로 도구를 제공하며 모든 AWS Deep Learning Amazon Machine Image(DLAMI) 옵션을 포함합니다. 모든 GPU 인스턴스 패밀리에 대한 NVIDIA GPU 드라이버를 설치하는 방법에 대한 자세한 내용은 설치 옵션을 참조하십시오.

통계를 쿼리하려면 sudo nvidia-smi -q 명령을 실행하십시오.

메모리 통계 예시:

ECC Errors
        Volatile                              # Errors counted since last GPU driver reload
            SRAM Correctable            : 0
            SRAM Uncorrectable          : 0
            DRAM Correctable            : 0
            DRAM Uncorrectable          : 0
        Aggregate                             # Errors counted for the life of the GPU
            SRAM Correctable            : 0
            SRAM Uncorrectable          : 0
            DRAM Correctable            : 0
            DRAM Uncorrectable          : 0

모든 세대의 NVIDIA GPU는 GPU 하드웨어의 집계 및 휘발성 메모리 통계를 기록합니다. 전체 ECC 오류 카운터는 GPU의 수명 기간 동안 지속됩니다. 양수 값은 이전 문제에서 나온 것일 수 있으므로 변동성이 큰 지표도 확인해야 합니다. 휘발성 ECC 오류는 GPU 드라이버가 마지막으로 다시 로드된 시점에서 0부터 증가합니다.

수정하지 않은 ECC 오류는 인스턴스 수명 기간 동안 증가합니다. 하지만 ECC 오류는 수정할 수 있습니다. 카운터를 재설정하려면 인스턴스를 재부팅하거나 GPU를 재설정하십시오. 인스턴스 유형과 GPU 세대에 따라 재부팅하면 잘못된 메모리 페이지에 대한 페이지 사용 중지 또는 행 재매핑이 시작됩니다.

P3, P3dn, G4dn 인스턴스:

    Retired Pages
        Single Bit ECC              : 0
        Double Bit ECC              : 0
        Pending Page Blacklist      : No

초기 세대의 NVIDIA GPU는 동적 페이지 사용 중지를 사용합니다. 단일 비트 오류는 일반적으로 문제를 일으키지 않으므로 무시해도 됩니다.

GPU 펌웨어가 이중 비트 오류를 식별하면 GPU가 처리를 중지하고 애플리케이션이 갑자기 종료됩니다. 이중 비트 오류가 발생하면 운영 체제(OS)에서 Xid 오류를 기록하며 Pending Page Blacklist 상태가 Yes로 표시됩니다. 이러한 오류를 해결하려면 인스턴스를 재부팅하여 잘못된 메모리 위치를 사용 중지하십시오. 재부팅하면 Pending Page Blacklist 상태가 No로 재설정됩니다.

참고: 오류 카운터는 GPU의 수명 기간 동안 지속됩니다. 인스턴스 시작 시 0이 아닌 카운터가 있다고 해서 활성 하드웨어 문제나 GPU 결함이 있는 것은 아닙니다.

P4d, P4de, G5, G5g 및 G6 인스턴스:

    Remapped Rows        Correctable Error                 : 0 # Can safely ignore.
        Uncorrectable Error               : 0 # If > 0, review system logs for Xid errors
        Pending                           : No # If Yes, an instance reboot or GPU reset is required.
        Remapping Failure Occurred        : No # Should always be No. If Yes, please stop/start the instance.

A100 및 A10G GPU를 사용하는 최신 인스턴스 패밀리는 알려진 성능 저하된 메모리 위치의 재사용을 방지하는 행 재매핑을 통해 메모리 오류를 격리하고 억제합니다. 행 재매핑은 이전 세대 GPU의 페이지 사용 중지 체계를 대체합니다.

수정 가능한 메모리 오류는 무시할 수 있습니다. 수정할 수 없는 오류로 인해 오류가 발생하거나 애플리케이션이 갑자기 종료될 수 있으며 OS 시스템 로그에 Xid 오류로 기록됩니다.

수정할 수 없는 오류로 인해 재매핑된 보류 중인 행이 활성화되면 GPU를 재설정하여 잘못된 메모리 위치를 사용 중지해야 합니다. GPU를 재설정하려면 인스턴스를 재부팅하십시오. 또는 다음 명령을 실행하여 GPU를 수동으로 재설정합니다.

sudo nvidia-smi -i GPU_UUID -r

참고: GPU_UUID를 GPU ID로 바꾸십시오.

재매핑에 실패하면 인스턴스를 중지하고 시작하여 정상 GPU가 있는 새로운 기본 호스트로 인스턴스를 마이그레이션합니다.

참고: AWS는 정기적인 진단을 수행하여 비정상 GPU를 감지하고 자동으로 교체합니다.

장애 모드 해결

모든 세대의 NVIDIA GPU용 GPU 드라이버는 OS 시스템 로그에 오류를 Xid 오류로 기록합니다. 이러한 오류에 대한 자세한 내용은 NVIDIA 웹사이트에서 Xid 오류를 참조하십시오.

GPU 개수가 잘못되었거나 GPU가 누락됨

연결된 모든 GPU를 보려면 다음 명령을 실행합니다.

nvidia-smi --list-gpus | wc -l

명령 출력에서 연결된 GPU 수가 인스턴스 유형의 예상 GPU 수와 일치하는지 확인합니다. GPU가 없는 경우 인스턴스를 중지 및 시작합니다.

위의 문제 해결 단계를 사용하여 다음 예제 ECC 오류를 해결할 수도 있습니다.

  • "Xid 48: A DBE has occurred"
  • "Xid 63: A page has successfully been retired"
  • "Xid 64: A page has failed retirement due to an error"

NVRM: Xid 79 (PCI:0000:00:00): GPU has fallen off the bus

Xid 79 오류는 인스턴스가 기본 GPU와의 통신이 끊겼을 때 발생합니다. 이 문제를 해결하려면 인스턴스를 재부팅합니다. 재부팅 후에도 문제가 지속되면 인스턴스를 중지 및 시작하십시오.

WARNING: infoROM is corrupted at gpu 0000:00:00.0

infoROM is corrupted 오류는 GPU 펌웨어의 일부가 손상된 경우 발생합니다. 이 문제를 해결하려면 인스턴스를 재부팅하거나 GPU를 재설정합니다. 재부팅 후에도 문제가 지속되면 인스턴스를 중지 및 시작하십시오.

NVRM: Xid 119 PCI:0000:00:00): Timeout waiting for RPC from GSP

-또는-

NVRM: Xid 120 PCI:0000:00:00): GSP Error: Task 1 raised error code

위의 오류는 GPU 시스템 프로세서(GSP)를 활성화할 때 발생합니다. 이 문제를 해결하려면 GPU 드라이버 또는 커널 모듈 내에서 GSP를 비활성화합니다. GSP를 비활성화하는 방법에 대한 지침은 NVIDIA 웹사이트에서 4.2.6. GSP 펌웨어 비활성화를 참조하십시오.

향후 Xid 오류 방지

가능한 한 최신 드라이버와 CUDA 런타임을 사용하십시오. GPU 드라이버 릴리스에는 수정, 개선 및 최적화가 자주 도입됩니다. 하지만 업데이트에는 기능 변경도 포함될 수 있습니다. 먼저 비프로덕션 GPU 인스턴스에서 드라이버 업데이트를 스테이징하고 테스트합니다.

GPU의 코어 및 메모리 클럭 속도는 부하에 따라 동적으로 변합니다. 성능을 개선하려면 지속적으로 GPU 코어 및 메모리 클럭 속도를 최대 속도로 설정하십시오.

GSP를 비활성화합니다. 최근 세대의 인스턴스에서 NVIDIA GPU에는 GSP 펌웨어 기능이 포함되어 있습니다. GSP를 비활성화하는 방법에 대한 지침은 NVIDIA 웹사이트에서 4.2.6. GSP 펌웨어 비활성화를 참조하십시오.

또한 Amazon CloudWatch 에이전트를 사용하여 GPU 지표를 모니터링합니다.

위의 문제 해결 단계를 완료해도 여전히 Xid 오류가 발생하면 AWS Support 케이스를 개설하십시오. 인스턴스 ID와 nvidia-smi -q 명령의 출력을 제공하십시오. 또한 NVIDIA GPU 드라이버에 포함된 sudo nvidia-bug-report.sh 명령을 실행합니다. nvidia-bug-report.sh 스크립트는 현재 작업 디렉터리에서 키 로그 및 기타 진단 정보를 캡처합니다. nvidia-bug-report.log.gz 압축 로그 파일을 지원 케이스에 첨부하십시오.

AWS 공식
AWS 공식업데이트됨 3달 전