RustのポータブルSIMDがGPUで動作:VectorWareが世界初の実装を発表

Rust SIMD on the GPU

VectorWareは、RustのポータブルSIMD(core::simd)をGPU上で動作させることに成功したと発表。この実装により、CPUとGPUの両方で同じSIMDコードが実行可能になり、GPUのワープをSIMDベクトルとして直接マッピングする。要素演算、リダクション、シャッフル、マスク操作などがワープ命令に変換され、スレッド以下の並列性を活用できる。将来的には、スレッド、async、テンソルコアとの統合も視野に入れている。

GPUは、ポータブルSIMDがターゲットとするもう一つのベクターハードウェアにすぎない。
  1. O3marchnative

    著者はRustのポータブルSIMDライブラリ[0]について言及している。ポータブルSIMDの唯一の問題はnightlyでしか使えないことだ。自分のFFTクレートで使っていたが、stableで動作するポータブルSIMDソリューションを得るためにfearless_simdクレート[1]に切り替えざるを得なかった。

    [0] https://doc.rust-lang.org/std/simd/index.html

    [1] https://github.com/linebender/fearless_simd

  2. 6r17

    頭が痛い——SIMDはCPUだけのものだと思い込んでいた自分が愚かだった——なぜGPUに移植されるのか理解できない——驚かせてくれたことに大いに敬意を表する

  3. grokcodec

    https://github.com/google/highway がC++にもたらしているようなスコープと成熟度を備えた、オープンソースのRust SIMDライブラリが欲しい。

  4. camel-cdr

    ポータブルSIMDのあらゆる例がポータブルでないのが大好きだ。

    定数のSIMD幅を指定しているのでポータブルではない。まあ、性能的にポータブルではないだけだが、そもそもなぜSIMDを使っているのか?

  5. nynx

    RustでGPU上で競争力のある性能を出す複雑なアルゴリズムの例はある?ラディックスソートが良い出発点かもしれない

  6. LegNeato

    著者です、AMA。

  7. melodyogonna

    とても興味深い。

    しかしGPUプログラミングは、非常に大きなデータで3D計算を始めると複雑になる。この上にテンソル抽象化がどう構築されるのか興味深い。もう一点は、これは固定幅のSIMDベクトルを使っていることだ。利用可能なGPU情報に基づいてこれを静的に計算する方法がない限り、性能は常にテーブルに置き去りにされるだろう。

  8. westurner

    pgrustにおけるRust SIMD、GPU上で?

    「Pgrust v0.2: Now faster than Postgres」(2026-06)https://news.ycombinator.com/item?id=49111925

この日のほかの記事

2026-08-10