Intel は以前、すべてのピースが対象となる前に、SIMD ベースのソートを大幅に効率化するためのスタートソース C++ ヘッダー ファイル ライブラリを公開しました。超高速の AVX-512 クイックソート実装を提供します。 現時点では、そのコードは Numpy にマージされており、10 ~ 17 倍のバスルアップを提供しています。
昨年の終わりに向けて、インテルは GitHub クロニクルを通じて x86-simd-form を静かに利用できるようにしました。 またはそうではありませんが、SIMD ソートを過度に効率化するための C++ ヘッダー ファイル ライブラリですが、その新しいフェッチでは、AVX-512 クイックソート実装をターゲットにしています。
この x86-simd-form プロジェクトの強力な報道はなく、GitHub のインターネット ページ自体も、並べ替えのために AVX-512 が達成できる非常に迅速な効率性について語るほど強力ではありません。 …しかし、一般的に使用されているNumpyのスタートソースプロジェクトのように、それを大いに活用し、驚くべき結果を達成する可能性があります.
現時点で Numpy にマージされたのは、16 ビットおよび 64 ビットのレコードデータのクイックソートをベクトル化するための PR 22315 でしたAVX-512の使い方を紹介。 Intel Tigerlake マシンでは、これにより 16 ビットの int ソートが 17 倍高速化されましたが、64 ビットのソートは、ランダム配列と 32 ビット レコードの場合、データの種類が 12 ~ 13 倍高速になりました。 この Numpy の代替は、かつて Intel エンジニア Raghuveer Devulapalli によって作成され、x86-simd-form コードを利用しています。
祝うに値する大騒ぎ… 複数のサプライヤーから、より近代的なプロセッサでのより効率的な AVX-512 の実装に至るまで、より頑丈な機器の採用に至るまで、スキームが閉じられます。とりあえずAVX-512あたりから楽しみを奪う負荷になりそうです。 AVX-512 を使用した場合のパフォーマンスは比較的優れており、特に新しい世代の Intel CPU でのよりシンプルな AVX-512 の効率を考慮すると. 最新の Xeon スケーラブル プロセッサを使用すると、AVX-512 の熱およびエネルギーへの影響は、以前はパンニングされていたため、過度に広範囲に及んだり、重要な CPU ダウンクロッキングを引き起こしたりすることはなくなりましたが、比較的厄介な形になっています。 私の新鮮な Intel Xeon “Sapphire Rapids” AVX-512 ベンチマーク にぶつかってエネルギー効率を伴うか、それはあまりにも汚染されています。最新の Intel Core クライアント プロセッサは、もはや AVX-512 を提供していません。 それまでの間、Ryzen 7000 シーケンスから第 4 世代 EPYC サーバー プロセッサまでの Zen 4 プロセッサを搭載した AMD の側面については、(最終的に) AVX-512 がスキームはに閉じられました。
迅速な AVX-512 ソートのために、この x86-simd-form を採用するために他の機器イニシアチブが保持するものをモデル化するために活発になる可能性があります。 それとも昨年の simdjson が非常に高速な JSON 解析のために AVX-512 を利用した AVX-512 の幅広い採用事例として、自動的に仲介しないものとして。