• ベストアンサー

IPCについて

プロセッサ(PCU)の性能を表す指標の一つにIPC(insuructions per (clock) cycle)というものがありIPCとはCPUにおけるクロックあたりの命令実行数です。 そこでIPCが1のCPUを載せたコンピュータAとIPCが2のCPUを載せたコンピュータBがあり、両方のコンピュータで同じプログラムを同時に実行したらコンピュータBほうがIPCが大きいにも関わらず、コンピュータAのほうがさきに処理を終了する場合があるといいます。 その原因として考えられる状況や環境を知りたいのですが。 すいません、だれか教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • Eureka_
  • ベストアンサー率41% (5079/12273)
回答No.2

プログラムがヘボヘボで、特定命令の結果を参照しないとならない命令を多数放り込んであるなどでIPCの高さ(=並列処理の有効性)を活かせない場合。 並列処理に適した形に命令群を並べ替えようという処理によるオーバーヘッドも発生するので、この例でいえばコンピュータBがIPC1すら確保できなくなる事態もあり得るかと思います。

その他の回答 (1)

回答No.1

  クロックが同じと言う条件は書かれていないようですから・・・であれば、AのCPUクロックがBのCPUクロックの2倍を上回る場合。