Rust 컴파일러에 GPU 오프로드 통합: 이식성, 안전성, 성능 모두 잡았다

GPU Offload in Rust: Portable, Safe, and Fast

Rust 컴파일러에 GPU 오프로드 통합: 이식성, 안전성, 성능 모두 잡았다

고성능 GPU 프로그래밍은 전통적으로 실행 효율성과 메모리 안전성 사이에서 절충을 강요해 왔습니다. 이 논문은 Rust 컴파일러(rustc)와 LLVM 백엔드에 기본 내장된 제로 오버헤드, 멀티 벤더 GPU 컴파일 프레임워크를 제시합니다. Rust의 소유권 시스템과 엄격한 앨리어싱 보장(noalias)을 활용하여 LLVM의 오프로드 인프라를 통해 데이터 전송을 효율적으로 관리하고 최적화합니다. 호스트와 디바이스 대상 간의 크로스 벤더 ABI 불일치 문제를 해결하고, 수동 및 컴파일러 생성 메모리 이동을 모두 안전하게 처리하는 2단계 컴파일 파이프라인을 도입합니다. RAJAPerf 벤치마크에서 CUDA 및 HIP C++ 기반의 수동 최적화 코드와 견줄 만한 커널 성능을 달성했습니다.

Rust의 엄격한 소유권 모델은 호스트 CPU에 대한 컴파일 타임 메모리 안전성을 보장하지만, 이러한 제약을 대규모 병렬 GPU 실행 환경에 적용하는 것은 이전까지 벤더 종속 DSL이나 명시적인 안전하지 않은 원시 포인터로의 도피를 요구했습니다.

같은 날의 다른 소식

2026-08-17