キーワード辞典
クロック周波数とキャッシュメモリに関する大雑把な話

登録日 09/01/29   更新日 09/01/29


クロック

コンピュータがデータをやり取りしたりプログラムの命令を実行したりする時には、 「せーの!」と一定のタイミングで調子を合わせて行うことが必要になる。 コンピュータには、そのタイミングを合わせるための”音頭とり”が居て、 データのやり取りやプログラムの命令の実行は、 その”音頭とり”の手拍子のタイミングを元にして行われる。 そのタイミングの事をクロックと言う。


クロック周波数

1秒間のタイミングの数、 普通に言うと1秒間に刻まれるクロックの数をあらわす値。単位はHz(ヘルツ)。 1秒間に1回のタイミングならクロック周波数は1Hz、 100万回なら1MHz。 CPUのアーキテクチャにもよるが、 1秒間のタイミングの数が多い(=データのやり取りや命令の実行の回数が多い)方が、 速いコンピュータ、と、まぁ、言える。
クロック周波数が1MHzの時、1クロックの長さは、 100万クロック:1秒 = 1クロック:X秒、で、Xは1μ秒である。

初期のコンピュータは、 ”音頭とり”のタイミング(ベースクロックと言う)と、 コンピュータ内部のRAMなどの回路のタイミング (システムクロック、FSB(Front Side Bus)、などと言う)と、 CPUのタイミング、は全て同じであったが、 CPUやRAMの性能が向上することにより、 CPUがベースクロックの整数倍もしくは半整数倍の速さで動作するようになり、 さらに、RAMなどの回路もCPUよりは遅いが ベースクロックの整数倍の速さで動作する様になって来ている。 現在、何々のクロック周波数と言う場合は、CPUやRAMなど、 各々が実際に動作している周波数を指す。



MIPS

ミリオン・インストラクションズ・パー・セカンド。 日本語に訳すと、100万・命令・毎・秒。つまり、1秒間に何百万命令を実行出来るか、というCPUの性能をあらわす値。 略してミップスと読む。1MIPSは、1秒間に100万命令実行出来ることになる。
仮に、クロック周波数が1MHzのCPUで1命令の実行に平均1クロックかかるとすると、そのCPUの性能は1MIPS、 クロック周波数が同じで1命令の実行に平均2クロックかかるとすると、そのCPUの性能は0.5MIPSとなる。
ちなみに、CPUの1命令あたりの平均クロック数は、CPUの持つ各命令が実行に要するクロック数とその出現頻度を掛け合わせたものの総和で求められる。


CISCやRISC、パイプライン処理などの話が絡むと ややこしくなるので、略。


キャッシュメモリ

CPUと主記憶装置とのアクセスにおいて中間に隠れる様に存在する小容量だが高速なメモリ。 「キャッシュ」は「現金」ではなく「隠れた」の意味。
コンピュータ内部では、CPUに比較してRAMのアクセスは遅いため、 プログラムやデータの読み書きなどで足を引っ張られてしまう。 より高速なRAMを使えば改善はされるが、値段が高い。 そこで、より高速なRAMを少しだけ用意して頻繁に使うプログラムやデータを其処に置く様にし、 必要に応じてアクセスする事でCPUと主記憶装置とのアクセスの速度の改善をはかっている。 但し、キャッシュメモリが大容量なほど速度に効果が有るとは限らない。

なお、最近のCPUは、 CPUとキャッシュメモリが1つのパッケージに収められており、 CPUのクロック周波数で動作しているものが多い。


これも、CISCやRISC、パイプライン処理などの話が絡むと ややこしくなるので、略。



ヒット率

CPUがプログラムやデータを読みに行った時に、欲しいものがキャッシュメモリに有る確率。 当然、数値が高いほど良い。



NFP

CPUがプログラムやデータを読みに行った時に、欲しいものがキャッシュメモリに無い確率。 ヒット率の逆。 この時は仕方が無いので主記憶装置に読みに行く。



CPUがプログラムやデータをアクセスする時の平均時間

ヒット率×キャッシュメモリのアクセス時間+ (1-ヒット率)×主記憶装置のアクセス時間。
あるいは、
(1-NFP)×キャッシュメモリのアクセス時間+ NFP×主記憶装置のアクセス時間。




[ 赤い玉の画像 ] 「キーワード辞典」の目次へ

[ 黒板消しとチョーク受けの画像 ]