並列処理で計算速度が速くなると思いきや
そうでもない場合が少なくないのはガッカリだ。
cpuのあいだの通信が時間がかかるというのだ。
ところが逆に速度が上がる場合があるという。
知らなかった。
それをスーパーリニアリゼーションと呼ぶ。
同じように加速器のlinear collider も
super linear collider という概念が作れればいいのに。
スーパーリニアリゼーションというのは
”
マルチプロセッサによる並列処理では、プロセッサの数を(たとえば)4倍にしたときに計算速度が4倍を超えて速くなるという現象が起こることがあります。この現象のことを「スーパーリニアアクセラレーション(超線形加速)」といいます。「超線形加速」というのは、「線形加速」を超えた加速という意味です。プロセッサの個数をn倍にしたとき速度もn倍になるのが線形加速です。多くの場合、実際には線形加速よりも遅くなるものですが、ある条件が揃ったときに線形加速を超えることがあります。コンピュータの性質上、コンピュータのメインメモリを使うよりも、プロセッサのより近くにあるキャッシュというメモリを使うほうが計算が速くできます。プロセッサが増えて一つひとつのプロセッサが担当する計算量が小さくなると、コンピュータのメインメモリを使う割合が減少し、より多くの計算をキャッシュだけで行えるようになるため、このような現象が起きるのです。
”
速くなるのも遅くなるのも
メモリーの使い方らしい。
良い。
ならばコンピュータの設計の時に工夫をすれば良さそうだ。