애플 실리콘(Apple Silicon) 기반 맥(Mac)에서 엔비디아(NVIDIA)의 CUDA 프로그램을 실행할 수 있는 새로운 호환성 레이어 'CuMetal'이 등장했습니다. CuMetal은 CUDA 소스 코드나 PTX(Parallel Thread Execution) 코드를 애플의 GPU 프레임워크인 메탈(Metal)로 변환하여, 엔비디아 GPU 없이도 애플 M 시리즈 칩에서 CUDA 기반 애플리케이션을 구동할 수 있도록 돕는 실험적인 소프트웨어입니다. 이는 컴파일러, 런타임, 그리고 호환성 라이브러리 세트로 구성되어 있습니다.
CuMetal은 소스 재컴파일, PTX 호환성, 그리고 바이너리 호환성 세 가지 경로를 통해 작동합니다. 특히 'cumetalc' 컴파일러는 .cu 파일을 실행 가능한 파일이나 .metallib으로 변환하며, PTX 호환성 경로는 더 많은 프로젝트 규모의 CUDA 코드를 지원합니다. 현재 3D 가우시안 스플래팅(3D Gaussian Splatting) 렌더러와 같은 산업용 CUDA 애플리케이션, 20만 개 입자 규모의 SPH(Smoothed Particle Hydrodynamics) 유체 시뮬레이션 등 복잡한 CUDA 커널들을 애플 실리콘에서 성공적으로 실행한 데모를 제공하고 있습니다. 이는 macOS 14 이상이 설치된 애플 M 시리즈 GPU에서 홈브루(Homebrew)를 통해 쉽게 설치하고 사용할 수 있습니다.
CuMetal의 등장은 애플 실리콘 맥 사용자들에게 중요한 의미를 가집니다. 그동안 엔비디아 CUDA는 GPU 가속 컴퓨팅의 사실상 표준으로 자리매김했지만, 애플 맥에서는 엔비디아 GPU를 사용할 수 없어 CUDA 기반 소프트웨어 개발 및 활용에 제약이 있었습니다. CuMetal은 이러한 장벽을 일부 허물어, AI 연구, 과학 시뮬레이션, 3D 렌더링 등 GPU 집약적인 작업들을 맥 환경에서도 수행할 수 있는 가능성을 열었습니다. 이는 개발자들이 특정 하드웨어 플랫폼에 얽매이지 않고 더 유연하게 작업할 수 있는 환경을 제공하며, 애플 생태계 내에서 고성능 컴퓨팅의 저변을 확대하는 데 기여할 것으로 보입니다.