ポラックの法則とは
ポラックの法則(Pollock's Law)は、1999年にフレッド・ポラックによって提唱された経験則であり、"プロセッサの性能はその複雑性の
平方根に比例する"という内容です。この法則は、計算機の性能がその価格に関連する二乗律(
グロッシュの法則)を踏まえています。
複雑性の定義
ここで言う「複雑性」とは、主に論理回路や電子回路の観点から見た設計の複雑さを指します。具体的には、ゲート数やフリップフロップ数(FF数)、あるいはネットリストにおけるエッジ数とノード数(配線数と素子数)などが挙げられます。要するに、
トランジスタの数がこの複雑性を決定する要因となります。
性能向上と消費電力
ポラックの法則に従うと、
トランジスタ数を2倍に増やしても性能は約1.4倍程度にしか上昇しません($ ext{√2} allingdotseq 1.4$)。この現象は、新型プロセッサが
トランジスタを2倍に使用した場合でも、実際には性能がその期待を下回ることを意味しています。その一方で、消費電力はほぼ比例して増大し、その結果、消費電力あたりの性能は低下してしまいます。
具体的には、
トランジスタ数を2倍にした場合、消費電力も2倍になり、性能は1.4倍にしか向上しないならば、性能効率は0.7倍に低下します。この現象は、
トランジスタ数の増加に伴う熱問題の制約を示唆しています。
直感的な説明
この法則は、プロセッサ設計のある種の「飽和」に達した後に観察される現象です。例えば、かつてはビットスライスプロセッサという方式で、複数の8ビットALUを並べて32ビットを実現することが可能でした。この場合、単純に物理的な部品を増やすことで性能は比例的に向上しました。しかし、時代が進むにつれて、パイプライン化や並列処理の手法が導入されると、さらに性能を向上させるためには複雑さが増すことになり、全体の資源消費が計算性能を上回る事態が発生しうるのです。
プロセス技術との関連
ポラックの法則の議論は、プロセス
微細化なしに進められていますが、実際には
ムーアの法則や
デナード則が長い間、プロセッサ性能向上の大きな要因でした。プロセス
微細化により、性能は改善され、消費電力は低下してきました。特に、このような性能向上は更新作業を通じて、設計変更なしに得られる場合も多く、"無料の昼食"とも例えられます。
現在の状況と将来
ポラックの法則が示しているように、プロセッサの設計は今後、低消費電力の
マルチコア化に向かうことが予想されています。かつてはシングルコア性能が優先されていましたが、今では効率と消費電力のバランスを取ることが求められています。これは、特に
デナード則の崩壊と相まって、今後の技術革新に影響を与える重要な課題と言えるでしょう。
ポラックの法則は、パフォーマンスと複雑性の関係を深く理解するための重要な指針を提供しており、今後もプロセッサ設計の重要な要素となるでしょう。