読者です 読者をやめる 読者になる 読者になる

muranoyaのブログ

https://github.com/muranoya

並列化効率

とある並列言語でとあるベンチマークの性能評価をまわすと,どうも理想的すぎる台数効果が得られることがわかった.

とあるベンチマークは,中身がないので並列化のためのオーバーヘッドがもろにでる.例えば逐次Cプログラムではすぐ終わるような問題サイズでも,Open MPのタスク構文では並列化したにも関わらず,遅すぎて終わらないことがあるくらいのものだ.

理想的すぎる台数効果,というのは,例えば逐次プログラムで120秒かかるものが,とある並列言語で2ワーカで実行すると60秒になり,4ワーカでは30秒になるといった具合.

どうもおかしい.こんなに理想的な台数効果はありえない.

性能評価は少し前のAMDのCPUで行っている.

私が思うに,AMDはタイムマシンの開発に成功し,こっそりとCPUにその機能を追加した.とある命令列をCPUで実行すると,タイムマシン機能が働き,CPUはワームホールをくぐり抜け,もとのソケットに収まり,あたかもとても高速に実行されたかのように感じられるのだ.ターボブーストならぬ,タイムブーストとでも言うべき機能だろう.