ソフトウェアもムーアの法則に従え

Intel: Software needs to heed Moore's Law | CNET News.com
Intelが檄を飛ばした。


"The software has to also start following Moore's law,"
....
"Software has to double the amount of parallelism that it can support every two years."
「ソフトウェアもムーアの法則に追随せよ」「2年で並列化プロセスを倍にせよ」とのこと。
3Dのレンダリングみたいにすべての画素やポリゴンなどに対する処理が並列化できるものはともかく、文書レイアウトのように前の段落の処理が終わらないと後ろの段落が決定しないような逐次処理では、独立して演算できる場所を探す方が大変だったりするからあんまり意味がない。
計算資源を食い尽くす物理シミュレーションも、衝突判定のための探索などはマルチスレッド向きだけど、こと運動となると別。各オブジェクトがそれぞれシーン中のすべてのオブジェクトとの相互作用を検討されなければならない。計算の起点(どの形状の運動から計算するか)を変えると結果が変わる。起点を同じにすると同じ計算経路しかたどれないから逐次処理になってしまう。異なる形状を扱うとそれぞれのプロセッサで異なる運動状態を結果として上げかねない。という点でマルチスレッドにしてもプロセッサ数文のパフォーマンスは出ない。
とはいえ、メニイコアが当たり前になってきている現状は、速度を稼ぐ必要のある処理は並列化によるパフォーマンスアップを検討できる幸せな状況であることも事実。
ムーアの法則、実際に突きつけられてみると大変に重い拘束であるなぁ。