소식 AMD HIP SDK 출시: AMD GPU로 CUDA 앱 실행 가능
- BarryWhite
- 조회 수 454
- 2023.07.29. 23:38
이제 전문가용 및 일반 소비자용 GPU를 위한 CUDA 지원을 제공하는 AMD의 HIP SDK가 ROCm 에코시스템의 일부로 제공됩니다.
소비자용 및 전문가용 GPU에서 CUDA 애플리케이션을 쉽게 포팅할 수 있는 오픈 소스 ROCm 솔루션의 AMD HIP SDK
오늘 출시된 HIP SDK는 기본적으로 CUDA 애플리케이션을 간소화된 C++ 코드 기반으로 포팅하여 AMD 또는 NVIDIA GPU 모두에서 보다 쉽게 실행할 수 있도록 컴파일할 수 있도록 지원합니다. 또한, AMD는 전문가용 GPU뿐만 아니라 Radeon과 같은 소비자용 하드웨어에도 HIP SDK를 확장합니다.
HIP SDK로 할 수 있는 일
기존 CUDA 애플리케이션을 AMD GPU에서 실행되도록 변환합니다.
AMD에 지원을 요청할 필요 없이 변환 가능
GPU 가속 그래픽 및 시뮬레이션 툴을 AMD 하드웨어에 포팅할 수 있습니다.
HIP SDK의 흥미로운 점은 모든 전문가용, 워크스테이션 및 게이밍 GPU 제품군에서 작동하며 AMD의 APU에서도 지원된다는 점입니다. AMD HIP SDK가 지원하는 GPU의 전체 목록은 다음과 같습니다:
Radeon VII
Radeon RX Vega 시리즈
Radeon RX 5000 시리즈
Radeon RX 6000 시리즈
Radeon RX 7000 시리즈
Radeon Pro WX 9100
Radeon Pro W6000 시리즈
또한 최신 드라이버인 Windows용 Radeon Software 21.12.1 또는 Radeon PRO Software 21.Q4 및 Linux용 Radeon Software 22.10 또는 ROCm 5.3을 실행해야 합니다. 다음은 AMD의 HIP SDK가 제공하고자 하는 것입니다:
HIP SDK가 필요한 이유는 무엇인가요?
저희는 GPU 가속 애플리케이션 개발자들이 사용자들이 어떤 하드웨어를 사용할지 자유롭게 선택할 수 있기를 원한다는 것을 알고 있습니다. 하지만 그렇게 하려면 독점적인 CUDA API를 사용하는 NVIDIA용 코드 베이스와 다른 GPU용 코드 베이스를 별도로 유지해야 하는데, 특히 소규모 팀이라면 이 작업이 쉽지 않습니다. 바로 이 점에서 HIP와 새로운 HIP SDK가 등장했습니다.
HIP는 무료 오픈소스 런타임 API 및 커널 언어입니다. 이를 통해 기존 CUDA 애플리케이션을 단일 C++ 코드 베이스로 변환하여 AMD 또는 NVIDIA GPU에서 실행되도록 컴파일할 수 있으며, 필요한 경우 플랫폼별 기능을 작성할 수도 있습니다. HIP SDK는 이 과정을 더 쉽게 수행할 수 있는 툴을 제공합니다.
HIP는 ROCm과 어떻게 다른가요?
HIP는 GPU 컴퓨팅을 위한 오픈 소스 플랫폼인 AMD ROCm의 일부입니다. 그러나 AMD ROCm 플랫폼은 HPC 및 AI, 특히 서버 기반 솔루션에 초점을 맞추고 있는 반면, HIP는 데스크탑 애플리케이션을 위해 설계되었습니다. Windows는 물론 Linux에서도 사용할 수 있으며, PyTorch 또는 TensorFlow와 같은 머신러닝 프레임워크는 제공되지 않고 렌더러 및 시뮬레이션 툴과 같은 GPU 집약적 소프트웨어에 필요한 핵심 기능만 제공됩니다.
HIP SDK로 무엇을 할 수 있나요?
AMD에 먼저 연락하지 않고도 HIP API로 무엇을 할 수 있을까요? HIP API는 강력한 도구 세트이지만, 이를 최대한 활용하기 위해서는 엔지니어의 적극적인 지원이 필요합니다. 새로운 SDK는 일을 훨씬 더 간단하게 만들어 줍니다. 저희는 여전히 도움을 드리고 있지만, SDK에는 귀하가 직접 CUDA 애플리케이션을 변환하는 데 필요한 도구가 포함되어 있습니다.
HIP SDK는 어떤 종류의 소프트웨어를 대상으로 하나요?
숫자 연산, 특히 그래픽 및 시뮬레이션 툴을 사용하는 모든 소프트웨어가 대상입니다. DCC(디지털 콘텐츠 제작) 시장에서는 아마존 프라임의 '높은 성의 사나이' 같은 시리즈의 시각 효과에 사용되는 3D 소프트웨어인 Blender의 Cycles 렌더 엔진에서 HIP가 사용됩니다. Maxon은 매트릭스 같은 영화에 사용된 Redshift 렌더러를 포팅하는 데 HIP를 사용하고 있습니다: 부활과 같은 영화에 사용된 레드시프트 렌더링을 AMD GPU에서 실행할 수 있도록 포팅하고 있습니다. 그리고 AEC(건축, 엔지니어링 및 건설) 시장에서도 개발자들은 전산 유체 역학 툴을 통해 동일한 작업을 수행하고자 합니다.
하지만 대규모 독립형 애플리케이션을 개발할 필요는 없습니다. 플러그인 개발사인 Boris FX는 HIP를 사용하여 에미상 수상 경력에 빛나는 자사의 VFX 플러그인 제품군인 Sapphire를 AMD GPU에서 실행할 수 있도록 하고 있습니다. 이와 같은 소규모 툴의 포팅은 새로운 SDK가 지원할 수 있는 프로젝트의 종류입니다.
HIP SDK를 사용하여 CUDA 애플리케이션을 포팅하는 것이 얼마나 어렵나요?
생각만큼 어렵지 않습니다. CUDA와 HIP는 모두 C++의 방언이므로 CUDA를 알고 있다면 구문이 친숙할 것이며, SDK에는 프로세스 속도를 높여주는 도구가 포함되어 있습니다: HIPIFY 도구 세트는 CUDA 코드를 이식 가능한 HIP C++로 자동 변환합니다. AMD의 Orochi 라이브러리를 사용하면 AMD와 NVIDIA 하드웨어 모두에서 실행되는 단일 바이너리를 컴파일할 수도 있습니다.
이는 각 공급업체별로 별도의 코드 베이스를 구축할 필요 없이 여러 GPU에서 작동하는 코드 베이스를 원하는 애플리케이션 개발자에게는 분명 큰 소식입니다.
다운로드