RustでGPUオフロード:移植性・安全性・速度を実現

GPU Offload in Rust: Portable, Safe, and Fast

RustでGPUオフロード:移植性・安全性・速度を実現

高性能GPUプログラミングは、実行効率とメモリ安全性のトレードオフを強いられてきました。Rustの所有権モデルはホストCPUではコンパイル時にメモリ安全性を保証しますが、GPUのような並列実行環境に適用するには、ベンダー固有のDSLやunsafeな生ポインタに頼る必要がありました。本論文では、Rustコンパイラ(rustc)とLLVMバックエンドに組み込まれた、ゼロオーバーヘッドでマルチベンダー対応のGPUオフロードコンパイルフレームワークを提案します。Rustの型システム、所有権システム、noaliasによる厳密なエイリアシング保証を活用し、LLVMのオフロードインフラを通じてデータ転送を効率的に管理・最適化します。ホストとデバイス間のABI低下の不一致という技術的課題を明らかにし、手動およびコンパイラ生成のメモリ移動を安全に処理する2パスコンパイルパイプラインを導入します。RAJAPerfでの評価では、ネイティブな手動最適化CUDAおよびHIP C++ベースラインと同等のカーネル性能を達成しました。

高性能GPUプログラミングは、伝統的に実行効率とメモリ安全性の間の妥協を強いられてきました。

同じ日のその他の記事

2026-08-17