ROCm

위키백과, 우리 모두의 백과사전.

ROCm은 GPU(그래픽 처리 장치) 프로그래밍을 위한 AMD(어드밴스트 마이크로 디바이시스) 소프트웨어 스택이다. ROCm은 GPGPU(그래픽 처리 장치)의 범용 컴퓨팅, HPC(고성능 컴퓨팅), 이기종 컴퓨팅 등 여러 영역에 걸쳐 있다. HIP(GPU 커널 기반 프로그래밍), OpenMP/MPI(메시지 전달 인터페이스)(지시 기반 프로그래밍) 및 OpenCL과 같은 여러 프로그래밍 모델을 제공한다.

ROCm은 무료이면서 자유 오픈 소스 소프트웨어(GPU 펌웨어 Blob 제외)이며 다양한 라이선스에 따라 배포된다. ROCm은 라데온 오픈 컴퓨트(Radeon Open Compute) 플랫폼의 약어이다.

배경[편집]

ATI/AMD의 첫 번째 GPGPU 소프트웨어 스택은 스트림(Stream)이 된 클로즈 투 메탈(Close to Metal)이었다.

ROCm은 볼츠먼 이니셔티브(Boltzmann Initiative)를 통해 2016년경에 출시되었다. ROCm 스택은 이전 AMD GPU 스택을 기반으로 구축되며 일부 도구는 GPUOpen으로 거슬러 올라가고 다른 도구는 HSA(이기종 시스템 아키텍처)로 거슬러 올라간다.

이기종 시스템 아키텍처 중급 언어[편집]

HSAIL은 적절한 종료자를 사용하여 최종 하드웨어(GPU, FPGA...)로 JIT 컴파일할 수 있는 중간 수준의 하드웨어 독립적 중간 표현을 생성하는 것을 목표로 했다. 이 접근 방식은 ROCm에서 삭제되었다. 이제 LLVM MLIR을 사용한 향상된 모듈성에 대한 연구는 여전히 진행 중이지만 LLVM과 업스트림된 AMDGPU 백엔드를 사용하여 GPU 코드만 빌드한다.

프로그래밍 능력[편집]

스택으로서의 ROCm은 커널 드라이버부터 최종 사용자 애플리케이션까지 다양하다. AMD는 학습 포털을 통해 AMD GCN 하드웨어 및 ROCm 프로그래밍에 대한 소개 비디오를 보유하고 있다.

스택 및 ROCm/HIP 프로그래밍에 대한 최고의 기술 소개 중 하나는 현재까지 레딧(Reddit)에서 찾을 수 있다.

같이 보기[편집]

외부 링크[편집]