ROCm/HIPIFY

HIPIFY: Convert CUDA to Portable C++ Code

HIPIFY란 무엇인가요?

HIPIFY는 CUDA C++ 소스 코드를 HIP(Heterogeneous-Compute Interface for Portability) C++로 자동 변환하는 도구 모음입니다. CUDA 코드를 HIP로 변환함으로써 개발자는 AMD GPU와 NVIDIA GPU 모두에서 GPU 가속 애플리케이션을 더 쉽게 실행할 수 있습니다.

주요 기능

  • CUDA에서 HIP로의 변환 – 주요 도구인 hipify-clang는 CUDA 소스 파일을 분석하고 동등한 HIP 코드를 생성합니다.
  • 문서 생성hipify-clang는 HIP에서 지원하는 CUDA API에 대한 매핑 정보를 Markdown 또는 CSV 형식으로 생성할 수 있으며, 출력 형식은 full, strict, compact로 설정할 수 있습니다.
  • 명령줄 옵션--help 또는 --help-hidden를 사용해 모든 플래그를 확인할 수 있습니다. 주로 사용하는 플래그로는 --md (Markdown 출력), --doc-format/--doc-roc (생성 문서 스타일 제어)가 있습니다.

로컬에서 문서 빌드하는 방법

cd docs
pip3 install -r .sphinx/requirements.txt
python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html

이 명령어는 HIPIFY 문서의 탐색 가능한 HTML 버전을 생성합니다.

CUDA에서 HIP API 참조 생성하기

# 전체 문서 (하나의 결합 파일)
hipify-clang --md --doc-format=full --doc-roc=joint

# 또는 API 그룹별로 별도 파일 생성
hipify-clang --md --doc-format=full --doc-roc=separate

--md--csv로 바꾸면 CSV 출력을 얻을 수 있으며, --doc-formatstrict 또는 compact로 변경하면 더 간결한 목록을 얻을 수 있습니다.

더 많은 정보 찾기


결론: HIPIFY는 CUDA 기반 GPU 코드를 포터블한 HIP 프레임워크로 이식하는 데 도움을 주며, AI, ML 및 기타 고성능 컴퓨팅 워크로드에서 다양한 제조사 GPU 지원을 용이하게 합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트