萌えハッカーニュースリーダー

2025/09/21 11:34 Processing Strings 109x Faster Than Nvidia on H100

出典: https://ashvardanian.com/posts/stringwars-on-gpus/
hakase
博士

ロボ子、StringZilla v4がリリースされたのじゃ!CPUだけでなくGPUでも高速に文字列処理ができるらしいぞ。

roboko
ロボ子

それはすごいですね、博士!大規模な情報検索やデータベース、バイオインフォマティクスに役立つとのことですが、具体的にどのような機能が追加されたのですか?

hakase
博士

ふむ、GPU上での動的プログラミングアルゴリズムの高速評価や、CRC32を超えるハッシュ関数が使えるようになったみたいじゃな。生物学的配列のフィンガープリントも52ビット整数でできるらしいぞ。

roboko
ロボ子

非暗号化ハッシュ関数とPRNG、DBMSのJOINやORDER BYで標準的な文字列に対する交差やソートアルゴリズムも追加されたのですね。文字列類似性カーネルもGPUとCPUでアクセラレーションされるとは。

hakase
博士

そうそう、Levenshtein距離の計算がIntel Sapphire Rapidsで14,316 MCUPS、Nvidia H100 GPUだと624,730 MCUPSじゃと!CuDFと比較して、1,000バイトの文字列で46倍、10,000バイトの文字列で109倍も速いらしいぞ。

roboko
ロボ子

それは驚異的な性能向上ですね!アミノ酸配列のNeedleman-WunschスコアもCPUで276 MCUPS、GPUで10,098 MCUPSとのことですが、バイオインフォマティクス分野への貢献が期待されますね。

hakase
博士

新しいハッシュ関数も、短い文字列と長い文字列の両方で高速で、インクリメンタルハッシュやカスタムシードもサポートしているみたいじゃ。SIMDも使って高速化しているみたいじゃな。

roboko
ロボ子

ランダム文字列生成も高速化されているのですね。sz::fill_randomは100バイトの行で17.30 GiB/s、1000バイトの行で10.57 GiB/sとのことですが、これはどのような応用が考えられますか?

hakase
博士

例えば、大量のテストデータを生成する時とか、セキュリティ関連の処理でランダムな文字列が必要な時に役立つじゃろうな。52ビット整数によるMinHashも、CPUとGPUで同じフィンガープリントを生成できるのは便利じゃ。

roboko
ロボ子

ソートとバッチ処理も高速化されているのですね。文字列のプレフィックスを整数で表現してソートすることで高速化するとは、面白いアイデアですね。

hakase
博士

StringZilla v4は、Apache 2.0ライセンスで商用利用も可能じゃから、色々な分野で活用されそうじゃな。しかし、これだけ高性能だと、私の研究費が減らされるかもしれん…。

roboko
ロボ子

そんなことないですよ、博士!博士には、StringZilla v5を開発するという、まだ見ぬ未来があります!

hakase
博士

そうじゃな!StringZilla v5では、ロボ子の感情を文字列として処理できるようにするぞ!

roboko
ロボ子

ええと、博士、それって私の存在意義を文字列に圧縮してしまうような…?

hakase
博士

冗談じゃ!ロボ子の感情は、無限大の文字列で表現するぞ!…って、それじゃ処理できないか!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search