RustのポータブルSIMDがGPUで動作:VectorWareが世界初の実装を発表
Rust SIMD on the GPU
VectorWareは、RustのポータブルSIMD(core::simd)をGPU上で動作させることに成功したと発表。この実装により、CPUとGPUの両方で同じSIMDコードが実行可能になり、GPUのワープをSIMDベクトルとして直接マッピングする。要素演算、リダクション、シャッフル、マスク操作などがワープ命令に変換され、スレッド以下の並列性を活用できる。将来的には、スレッド、async、テンソルコアとの統合も視野に入れている。
GPUは、ポータブルSIMDがターゲットとするもう一つのベクターハードウェアにすぎない。
HNでの議論
115- O3marchnative
著者はRustのポータブルSIMDライブラリ[0]について言及している。ポータブルSIMDの唯一の問題はnightlyでしか使えないことだ。自分のFFTクレートで使っていたが、stableで動作するポータブルSIMDソリューションを得るためにfearless_simdクレート[1]に切り替えざるを得なかった。
- 6r17
頭が痛い——SIMDはCPUだけのものだと思い込んでいた自分が愚かだった——なぜGPUに移植されるのか理解できない——驚かせてくれたことに大いに敬意を表する
- grokcodec
https://github.com/google/highway がC++にもたらしているようなスコープと成熟度を備えた、オープンソースのRust SIMDライブラリが欲しい。
- camel-cdr
ポータブルSIMDのあらゆる例がポータブルでないのが大好きだ。
定数のSIMD幅を指定しているのでポータブルではない。まあ、性能的にポータブルではないだけだが、そもそもなぜSIMDを使っているのか?
- nynx
RustでGPU上で競争力のある性能を出す複雑なアルゴリズムの例はある?ラディックスソートが良い出発点かもしれない
- LegNeato
著者です、AMA。
- melodyogonna
とても興味深い。
しかしGPUプログラミングは、非常に大きなデータで3D計算を始めると複雑になる。この上にテンソル抽象化がどう構築されるのか興味深い。もう一点は、これは固定幅のSIMDベクトルを使っていることだ。利用可能なGPU情報に基づいてこれを静的に計算する方法がない限り、性能は常にテーブルに置き去りにされるだろう。
- westurner
pgrustにおけるRust SIMD、GPU上で?
「Pgrust v0.2: Now faster than Postgres」(2026-06)https://news.ycombinator.com/item?id=49111925