• ベストアンサー
  • 暇なときにでも

CPUの1周期で行われること

こんにちは。前から疑問に思っていたことを質問させていただきます。 それは、CPUのクロック周波数のことです。 クロック周波数とは、CPUのリズムのようなものであると思っています。例えば、512MHzだったら、1秒間に512M回のリズムでCPUがデータを処理しているという風に想像しています。 ここでの「データの処理」というのが、自分の頭の中ではっきりしていません。CPUの1周期では一体何が、どれだけ実行されるのでしょうか。 (CPUの中でどのようなことが行われているのかは大体わかります。CPUの1周期で何が起きているということがわかりません。) どれだけという点で言うなら、例えば32bitCPUなら、単純に1秒間に32bit*512Mのデータを処理する(100%能力を発揮したとして)ということになるのでしょうか。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数127
  • ありがとう数1

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

  • ベストアンサー
  • 回答No.2

インテルのCPUは1クロックで1命令の実行はできません。 命令の種類によっては、数クロック以上かかります。 (近頃は工夫してなるべく1クロックで1命令できる ようにはなってきている) メモリへのアクセスはもっとクロック数がかかります。 (メモリはCPUの速度よりも遅いので)。そこでいろいろ 苦労するわけです。CPUの中に小容量の高速メモリを 入れたり(「キャッシュメモリ」と言います)。 その量は、せいぜい512kバイト程度です。(512 Mバイトの1/1000) そのキャッシュメモリでさえ 1クロックでアクセスできるかどうか。 仮にメモリに書き込む命令が1クロックで実行できると しても、「メモリのどこに書き込むかを決める命令」も 実行しなければなりませんし、それらを「繰り返す命令」 も実行しなければなりません。ですので、 >>32bitCPUなら、単純に1秒間に32bit*512Mのデータを >>処理する(100%能力を発揮したとして)ということに >>なるのでしょうか。 ということにはなりません。非常に単純に言えば、 1回メモリに書くのに3命令必要ですから、3倍の 時間がかかります(実際はもっとかかります)

共感・感謝の気持ちを伝えよう!

質問者からの補足

1クロックで扱えるデータや命令そのものの量はどれくらいなのでしょうか。 データも命令もコンピュータ内(CPU内)では、2進数で表現されていますね。実際は電圧の高低で表されると思うのですが、CPUは1クロックで何ビット扱えるのでしょうか。 また、命令と一口に言っても、命令そのものは何ビットくらいあるのか?とか、命令によってビット数が違うのか?などが想像もつきません。 まだまだ、そのあたりのメカニズムがわからず、すっきりしません。もしよければここで教えていただくか、参考になるサイトを教えていただければと思います。

関連するQ&A

その他の回答 (1)

  • 回答No.1
  • asuca
  • ベストアンサー率47% (11786/24626)

CPUにはいろいろあるので一概にはいえませんが1クロックで1命令を処理します。 つまり単純なものだったら メモリからデータAの読み込み メモリからデータBの読み込み 数式(たとえばかけ算) 計算結果をストアする ストアされたものをメモリに書き込む などこれだけのステップがかかります。 ですからクロック数では一概に処理数は読めません。 CPUによてはたとえばRISC型のものだったら複数の命令を1クロックで処理できるなどして高速化できます。アップルのマッキントッシュなどに使われているPowerPCなんかはこのタイプですね。ですからWindowsマシンと単純にクロックによる速度比較ができないんです。 >例えば32bitCPUなら、単純に1秒間に32bit*512Mのデータを処理する(100%能力を発揮したとして)ということになるのでしょうか。 上記に書いたように処理手順があるのでそんなことはないです。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • CPUの比較

    久しくパソコンのカタログなんて見ていなかったのですが、知らぬ間にSempronとかTurionなんてCPUが登場しているようです。前にカタログを見ていた頃は、CPUのクロック周波数を比較すれば、おおよその能力差がわかったのですけど、最近はPentiumMにしても、数字が低いのに力がある?ものが多く出てきているようです。単純に比べられないことは理解できますので、あくまでザァーッとした感覚で結構なのですけど、これらのCPUのクロックが同じだとして、その能力差はどういったくらいのものなのでしょうか。

  • クロック周波数の計算問題について

    クロック周波数に関する問題を解こうとしているのですが、 公式がどうも覚えづらくて仕方ないのですが・・・ 何か良い解き方はないものでしょうか? 【問題】基本情報処理 平成19年 秋  「 1GHzで動作するCPUがある。このCPUは,機械語の1命令を平均0.8クロックで実行できることが分かっている。このCPUは1秒間に約何万命令実行できるか。 」 【公式】   (1) 1クロックの時間 = 1÷クロック周波数   (2) 1命令の実行時間 = 1命令の実行に必要なクロック数×1クロックの時間   (3) 1秒間の命令実行回数 = 1÷1命令の実行時間(命令) --------------------------------------------------------------- 【考え】  公式より、   (3)の答えを出したければ (2)が必要であり   (2)の答えを出したければ (1)が必要である。     であるから、先に(1)を求め (2)を求め (3)を最終的に求める。  という風に解いてはいるのですが、教科書を見ながらだと解ける状態ですが、いざ時間を空けると公式を忘れてしまって、この手の問題が解けないことがあり、困っています。   何か逆算みたいで、覚えづらいので一度覚えてもすぐに忘れしまうのですが・・・     この問題をとく方法としては、一旦、解き方の流れを把握して、求め方を覚えるしかないでしょうか? 【ふとした疑問】   この問題をしてふと思ったのですが、クロック周波数の計算事態は、実際にどこでどういう場面で使われるものなのでしょうか? 何だか、ただ問題を解いているようで、ちょっとイメージが浮いている感じがしているのです・・・(汗)   

  • フロップスとクロック周波数について分かりません

    1秒間に発振する(電圧の最大値と最小値を繰り返す)回数をクロック周波数という。 フロップス 1秒間に浮動小数点数演算が何回できるかを表す。 とwikipeにのっていたのですがどちらの説明も主語が何か分からないのでイマイチこの二つの概念が分かりません。 調べていて某サイトで 1並列(並列とは言わないけど)回路を持ったCPUでクロック周波数が1Hzなら1FLOPSになりますが、2並列回路を持ったCPUでクロック周波数が0.5Hzでも1FLOPSになります(2×0.5=1)。 とありました。  それでこれを見てフロップスの定義が分からなくなったのですが。  フロップスはwikipeによれば"1秒間に浮動小数点数演算が何回できるか"ですよね。でも上記サイトだと"回路の列×クロックの周波数"とありますよね。  これはどういったことなのでしょうか。

  • CPUについて

    よくCPUでpentium って聞くけど、同じクロック周波数ならpentium 2 < pentium 3 < pentium 4 < pentium Mの順に性能はよくなるの? celeron やcoreduo ならどうなの?同じクロック周波数ならどんな順位になるの?教えてちょんまげ

  • 基本情報処理技術者 H20 春 問19

    クロック周波数が1GHz の CPU がある。 この CPU の命令種別が,表に示す二つから成っているとき,処理能力は約何 MIPS か. 命令種別 実行時間(クロック) 実行速度(%) 命令1 10 60 命令2 5 40 答え:125MIPS 解説 この処理装置では、1命令を実行するクロック数は、 10 × 0.6 +5× 0.4=8 となる。 1秒間に実行できる平均命令数は、 10^9 ÷8=125 125×10^6 =125 となる。 とのことですが、 10^9 ÷8=125は一体何を求めいているのでしょうか? この式は、クロック周期数÷命令1、2のクロック数という式ですが・・・ 結局、いつも、1秒間に何回とかいうところを求めるところで、すべて間違ってしまいます。 色々分数にしているのは、わかるのですが・・・・ どなたかご教授願います。 しかし、情報処理の試験後、PCを投げつけぶっ壊してから、PCを買い換えましたが、 キーボードが微妙に変わって文字が打ちにくいな~。 意図していない文字まで売ってしまう。

  • CPUについて教えて下さい。

    CPUについてこれまで調べて分かったことは、  ・処理能力の目安となる数値として、クロック周波数を用いる  ・レジスタに記憶されているデータに対して演算を行う  ・レジスタからメモリーやその他の部品にデータを転送する  ・メモリやその他の部品から、レジスタにデータを転送する があります。 それ以外に・・・  (1)補助記憶装置からのみ命令を読み取り、命令を実行する  (2)内部に主記憶装置(メモリ)を持つ  (3)CPUは演算を行い、制御機能は持たない  (4)主記憶が多ければ多いほどCPUの動作は遅くなる  (5)クロック信号が発生する間隔が短いほど、CPUの動作は高速になる この中から最も適切なものを1つ選ばなくてはなりません。 (1)は“補助記憶装置からのみ”というのが違うと思います。 それ以外はちょっと分からないので、どなたかお知恵をかして下さい。 解説も添えてもらえると助かります。 回答よろしくお願いします!

  • CPU処理能力の今後

    数年前は2010年にはCPUは10Ghzに達すると言われていました。その後クロック周波数が頭打ちとなり、これからはマルチCPUの時代と言われるようになり、今後は2,4,8,、、と高速化が図られ数年後には32コアになると言われていましたが、コアの増大による高速化もすでに無理が出てきていると聞きます。 今後のCPU処理能力の向上は期待できないのでしょうか?それとも何らかの実用段階に入っている新しい技術などがあるのでしょうか? 私は3D制作関係でいくらでも高処理能力がほしい状態です。CPU関係、コンピューター関係にお詳しい方、ご回答をいただけたらと思います。 よろしくお願いします。

  • CPUの種類について

    パソコンのCPUで色々ありますがどう判断していいのかよくわかりません。 COREi3、COREi5、COREi7、XEONというのがありますが何がどういいのでしょうか。 動作周波数が高いと処理能力が良いというはわかるのですが、これらのCPUで同じような周波数であるのに値段とかがぜんぜん違うようです。 コアの数が多い少ないというのもあるようですが調べていても良くわかりません。 数が多いと処理が早くなるようなことは書いてありますがなぜそうなるのでしょうか。 動画の編集とかをしてみたいと思っているのですが何を買ったらいいのかよくわかりません。 一番高いのを買っておけば間違いは無いのかもしれませんが、宝の持ち腐れも無駄にしかなれないので適切なのを買いたいと思っています。 宜しくお願いします。

  • CPUの性能

    ちょっと前までは、とにかくクロック周波数の高いCPUが処理も早く高性能でした。 しかし、ペンティアム4 3.0GHzよりペンティアムD 2.8GHz(820)のほうが動画エンコードは速かったです。(CPUだけではないかもしれませんが) 最近Core2 なんてCPUがありますが、価格や後発であることを考えてもペンティアムDよりも高性能なのだと思います。 しかし、クロックは1.6GHzとかもありますね。 ペンティアムD915(2.8GHz)と同じくらいの処理性能といえばどの程度のクロックなのでしょうか。 ペンティアムDとCore2はどこがどう違うの? たとえばペンティアムD 820と915はキャッシュの大きさが違いますね。 なんだか最近、どれを選んだらよいのかわからなくなってきました。 近々パソコン購入予定です。 重たい処理といえば動画のエンコードをするくらいです。

  • CPUの性能の比較の仕方を教えてください

    CPUには、いろいろな種類がありますが、性能を比較する場合は、単純にクロック周波数が大きい方が処理速度がはやいのでしょうか?例えば、ペンティアム42GHZよりも、セレロンD3GHZの方が処理速度は速いのでしょうか?それとも、一般的に、セレロンはペン ティアムの下位モデルなので、クロック周波数が大きくても、ペンティアムの方が速いのでしょうか?その場合は、どこで、処理速度を比較すると良いでしょうか?また、同じメーカーなら比較しやすいと思いますが、他のメーカー同士の比較の場合は、どうなります か?例えば、インテルとAMDなどです。

専門家に質問してみよう