RustのSIMDがGPUで動作可能に

원제: Rust SIMD on the GPU

왜 중요한가

RustのポータブルなSIMD抽象化がGPUに対応したことで、単一コードベースでCPU・GPU両環境の並列処理性能を引き出せる可能性が開かれた。

VectorWareは2026年8月10日、RustのポータブルSIMD(core::simd)をGPU上で動作させることに成功したと発表した。同社はGPUネイティブソフトウェア企業として、開発者が慣れ親しんだRustの抽象化を使ってGPUの性能を最大限に活用できる環境の構築を目指している。

VectorWareは、RustのポータブルSIMDライブラリ(core::simd)をGPU上で動作させることに成功したと発表した。これは同社が「世界初」と位置づける技術的マイルストーンである。

従来、RustでSIMDを利用するにはcore::archのアーキテクチャ固有のベンダーintrinsics(x86-64の_mm256_add_psやArmのvaddq_f32など)を使用する必要があり、複数アーキテクチャに対応するためには個別の実装が必要だった。Rustのポータブルシmd(Simd<T, N>型)はこれを抽象化し、単一のコードでターゲットCPUの命令セットに自動的に変換される。

VectorWareは、NVIDIAのSIMT(Single Instruction, Multiple Thread)モデルとSIMDの概念が本質的に同一であることに着目した。GPUのワープは32レーンで1命令を実行し、各レーンが独自のデータを処理する構造は、SIMDの「1命令で複数データを処理する」仕組みと一致する。例えばSimd<i16, 32>型は32レーンのワープに各要素を割り当て、加算操作はワープ全体で同時に実行される。

同社はこれ以前に、RustのスレッドをGPUに対応させる取り組み(std::threadをGPUワープにマッピング)を行っており、今回のSIMD対応によってCPUとGPUの並列処理階層が統一された形になった。core::simdはcoreクレートに属しておりstdを必要としないため、GPU対応が比較的容易だったとしている。

출처

vectorware.com — 원문 읽기 →