てがみ: qatacri at protonmail.com | 統計 | 2025

202531700

一部の x86 CPU では AVX-512 命令を使うとクロックが下がる (らしい)。この理由は消費電力や発熱の問題だと説明されていることが多いが、仮にそうなら通常の動的周波数調整やサーマルスロットリングに任せておいて問題ない。特定の命令で明示的にクロックを下げるのは、タイミングが間に合っていないからだと考える方が妥当な気がする。

この二つは SIMD の将来について真逆の結論につながる。消費電力の問題であれば、それは CPU 全体の消費電力に対して演算器の消費電力の割合が十分に大きくなったことを意味する。これは演算効率という点でむしろ良い傾向である。一方でタイミングの問題であるなら、それは SIMD 幅を拡張できる限界がすでに近いことを意味する。

後者はソフトウェア側からすると悪夢だ。座標ベクトルの演算などを局所的に SIMD 最適化するなら 4-way くらいがちょうどいい。逆に 32-way SIMD となれば、データ構造を SoA にして最適化する覚悟を決めるしかない。 8-way あたりはどちらに転んでも微妙なラインで、「殺すならひと思いにやってくれ」という感じである。