공식 소개소개2 하드웨어배틀의 소개AMD가 2016년에 발표한
GPGPU 소프트웨어 및 HPC 플랫폼. NVIDIA의
CUDA에 대응된다. 현재 최신 버전은 5.6.1이다.
ATI 시절에는
Close to Metal 이라는 GPGPU API가 있었으나 금방 사장되었고, 이후에는 FireStream이라는 전용 그래픽카드
[1] 그러나 항상 돈이 부족했던 ATi/AMD의 절약 사상 특성상 한가지 칩으로 여러가지 돌려막기를 했었기 때문에 일반 그래픽카드를 사서 드라이버만 바꿔도 FireStream이 되었다. 반면 당시 엔비디아는 같은 아키텍처에서도 다르게 컷한 그래픽 칩을 사용했고, 나중에는 아키텍처 사이에 Volta등의 연산 전용 아키텍처가 등장하기 시작했다. 결국 AMD 또한 RDNA 세대부터 게이밍용 RDNA와 연산용 CDNA를 분리하여 취급한다.
를 내놓으며 ATI Stream이라는 SDK를 등장시켰다. 이는 CAL(저수준), Brook+(고수준)의 두 가지 언어로 이루어져 있었다.
이후 2011년부터 ATI APP Software Development Kit의 2.5 버전에서부터 OpenCL을 지원하기 시작하며 다시 사장되었다. 그러나 OpenCL 생태계가 많이 지지부진해지며 AMD는 2015년 11월에 개최된 SC15에서
볼츠만 계획(Boltzmann Initiative)을 발표하였고 이에 따라
# 2016년에 런칭된 플랫폼이 ROCm이다.
HIP(Heterogeneous-Compute Interface for Portability)라는 언어를 기반으로 하며, HCC(Heterogeneous Compute Compiler)라는 컴파일러를 사용한다. 기존 시장의 풍부한 생태계를 가진 CUDA를 의식한 듯이 코드의 문법과 사용법이 CUDA와 매우 유사하여 단순 매크로로 재정의만 해도 어지간하면 CUDA코드를 HIP코드로 바꿔 쓸 수 있을 정도이며
[2] CUDA코드의 cu, cuda 심볼 prefix를 hip으로 바꾸기만 해도 어지간하면 컴파일이 된다.
이렇게 HIP으로 작성된 코드는 HCC를 사용해 CUDA바이너리 트랜스컴파일을 지원해 기존 CUDA 플랫폼과의 호환성을 갖추었다. 또한
OpenCL과도 호환되어 좋은 호환성을 자랑한다. 그러나 문제는 ROCm이 출시된 지 거의 7년 반 동안 윈도우를 지원하지 않았기 때문에, 비 Linux 환경에서 라데온을 사용해 GPGPU 프로그램을 구동하려는 경우
OpenCL만을 사용할 수밖에 없었다. 그래서 지지부진한 OpenCL 환경과 마찬가지로, 아니 어쩌면 더 시장에서 존재감이 없다.
C++의 병렬 코드에서는 hip 코드로의 변경이 필요하나, Tensorflow, Pytorch, Caffe 프레임워크에서는 기존의 코드를 그대로 사용할수 있도록 배려되어 있다. 심지어 pytorch 에는 cuda 객체도 포함되어 이식성을 높였다.
2023년 7월 27일, ROCm 5.5 에서 드디어 윈도우 지원이
추가되었다. 이 문서의 내용 중 전체 또는 일부는
문서의
r32 판{{{#!wiki style="display: inline; display: 2.2;"
,
2.2번 문단}}}에서 가져왔습니다.
이전 역사 보러 가기 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
- [ 펼치기 · 접기 ]
문서의
r32 판{{{#!wiki style="display: inline; display: 2.2;"
,
2.2번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
- [ 펼치기 · 접기 ]
문서의
r168 판{{{#!wiki style="display: inline; display: 4.7.1;"
,
4.7.1번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
문서의
r 판{{{#!wiki style="display: inline; display: none;"
,
번 문단}}} (
이전 역사)
이 문서의 내용 중 전체 또는 일부는 2023-11-02 08:58:33에 나무위키
ROCm 문서에서 가져왔습니다.