注目★★★★★Lobsters
ARMのSVE2でsimdjsonのJSON解析を最大9%高速化
30秒で把握
- 1SVE2のmatch命令でsimdjsonのJSONインデックス処理を3〜9%高速化
- 2Graviton 4は最大5.3GB/s、Graviton 5は最大7.3GB/sを達成
- 3全体の解析速度向上はGraviton 4で2〜4%、Graviton 5で1〜2%
要約
ARMのSVE2命令「match」をsimdjsonに組み込み、JSONのインデックス処理をGraviton 4と5で3〜9%高速化した。22個、約24MBのJSONを使ったベンチマークで、Graviton 4のインデックス処理は最大5.3GB/s、Graviton 5は最大7.3GB/sに達した。パーサー全体の高速化はGraviton 4で2〜4%、Graviton 5で1〜2%だった。SVE2非対応のApple製プロセッサや旧GravitonではNEONへフォールバックする。現状は-mcpu=nativeなどでビルドした場合だけSVE2版を有効化し、将来は実行時選択に対応する。
あなたへの影響
ARM Graviton上でsimdjsonを運用するチームは、次のビルド検証で-mcpu=nativeとSVE2版の性能差を確認する価値がある。
推奨:SVE2はSVEの後継拡張で、非対応CPUではNEON実装が使われるため、配布バイナリのCPU切り替え方法も確認したい。