• ベストアンサー
  • 困ってます

CPUの処理性能(クロックサイクルと演算回数)について

CPUの処理性能の計算について、わかる方のお知恵を貸してください。 http://journal.mycom.co.jp/articles/2010/01/03/supercomputer2010/index.html の記事の中ほどに、以下の記述があります。 ---------------------- POWER7はPOWER ISA2.0.6に準拠しており、コアあたり4個の積和演算器を搭載し、サイクルあたり8つの倍精度浮動小数点演算を行うことができる。現在のIntelのNehalemコアが4演算であるのと比較すると2倍の演算数で、次世代のSandy Bridgeの演算数を先取りしている。 ---------------------- この、「4個の積和演算器で、サイクルあたり8つの倍精度浮動小数点演算を行うことができる」とは、このCPU(POWER7)の積和演算器は1サイクルで2つの倍精度浮動小数点演算を行うことができる仕様という意味でしょうか? そもそも、1サイクル=2演算というのは、個々の演算器の仕様に問わず常識的な意味なのでしょうか?

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

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

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

  • ベストアンサー
  • 回答No.1
  • Tacosan
  • ベストアンサー率23% (3656/15482)

「積和演算」がみそですな. これは s = s + a*b を計算することですから, 1個の積和演算器が 1サイクルで 1つの積和計算を行うことができるなら「積」と「和」で 2つの演算になります. つまり「2演算」とはいってもそれは「積と和 (もしくは差) が 1個ずつ」という意味であって, この組み合わせ以外では 2演算にはなりません. 単純な a+b+c は 1サイクルにならないってのがポイントかも.

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

質問者からのお礼

レスありがとうございます。 積和の「ミソ」、的確に教えていただきありがとうございました。 ちょうどご回答いただいた後、ネット購入した「はじめてのCUDAプログラミング」という書籍が届き、読みはじめたのですが、同じように説明がありました。 書籍では、SP(演算プロセッサ)の動作が1.48GHzが240個あるGeForceの性能知、708GFLops(※2演算同時実行の場合)/1.06TFLops(※3演算同時実行の場合)と表現されていました。 「積和演算命令」(D=A×B+C)と「乗算命令」(C=A×B)同時が3命令との解釈でしたので、 「積和演算」の(1)A×B、(2)その結果+C、「乗算命令」の(3)A×Bで3演算同時で確かに成り立つのでスッキリです。 Tacosanさんのアドバイスでとても調べやすくなり、感謝です。

関連するQ&A

  • 低消費電力版CPUのクロック当たり処理能力低い理由

    たとえば下記の3つのCPUです。 i3-3220T 最高クロック2.80GHz 浮動小数点演算性能 44.80 GFLOPS i5-3210M 最高クロック3.10GHz 浮動小数点演算性能 40.00 GFLOPS i7-3517U 最高クロック3.00GHz 浮動小数点演算性能 30.40 GFLOPS http://hardware-navi.com/cpu.php 最高クロックはほぼ同じですが、どうして最大演算性能にはこんなに違いがあるのでしょうか。 低消費電力版CPUがクロック当たり処理能力が低くなる理由を具体的に説明お願いします。

  • CPUの性能の基準は、「クロック周波数」以外どこを見ますか?

    数年前までは「ムーアの法則」とかなんとか言って、CPUのクロック 周波数はガンガン進化し続けていました。 しかし、最近の主流はデュアルコアで、クロック周波数はそんなに 莫大に上昇しているわけではありません。 クロック周波数を上げすぎると発熱がすごいらしいですね。 ベンチマークテストでは、整数演算やら浮動小数点演算やら (意味は分かりませんが)計算できるみたいですが、それは 店頭では確認できません。 では、パソコン店で新しいパソコンを選ぶ時、カタログ等に掲載されている どこらへんを見れば、CPUの性能の良し悪しが分かりますか?

  • Accessクエリの整数型と単精度型の演算について

    Accessのクエリで長整数型と単精度浮動小数点型を 加算すると答えが一致しません。理由を知っている人いますか? ちなみに長整数型と倍精度浮動小数点型を加算したときは答えが一致します。 浮動小数点は誤差がつきものなのは分かりますが、 確か単精度浮動小数点型は有効桁数7桁までのはず。 下記の例では問題ないように見えます。 (例)長整数型と単精度浮動小数型の演算:1000+0.20=1000.20000000298 長整数型と倍精度浮動小数型の演算:1000+0.20=1000.2 それではよろしくお願いします。

  • スパコン京のCPU、8FLOPS×8コア×2GHz

    スパコン京のCPUは、2GHzで8コア入っており、1コア1クロックあたり8FLOPSの性能があるそうです。 スパコン京に限らず、インテルのペンティアムとかでも1コア1クロックあたり、4FLOPSとか8FLOPSの性能があるそうですが、これがわかりません。 8FLOPSということは、1クロックあたり、浮動小数点演算が8個、答えが出るということですよね。 なぜ、1クロックあたり8個も答えがでるのでしょうか。 考えられることは、8つの演算器を並列に置いてるから、というのがありますが、これは1コアあたりと制約があるので、演算器は1つで、ということでしょう。 もうひとつ考えられるのは、内部でクロックを8倍に高速に上げていて、1クロックといいながら、演算部では8倍のクロックで回しているということが考えられますが、実際はどうなっているのですか? なにか参考になる資料とかもあれば教えてください。 それと、この場合の浮動小数点演算というのは、乗算器でいいのでしょうか。乗算器ならパイプを切って1クロックごとに1つづつの答えを出すことができると思いますが、除算器はどうなのでしょうか? スパコン京とかの除算器って、乗算器と同じFLOPSで答えを出すのですか? それとも、さすがに除算器は乗算器に比べて10倍くらいクロックがかかったりするのですか? 除算器の構造についても参考になるHP等あれば、教えてください。 最後に、CoreI7 SandyBridgeは、8 FLOPS/Clock × 3.3GHz × 6コアで、158GFLOPSだそうですがこれは、スパコン京に使われているCPUよりも高性能です。 ならこちらを使ったほうが、性能が高かったのではないですか。しかも汎用CPUなので、値段もかなり安くできたでしょう。

  • 浮動小数点演算と固定小数点演算の使い分けについて

    解説書などには、「浮動小数点は3.14E0の形」や「固定小数点は3.14」などと説明されています。 では、例えば、ごく一般的な32ビットマシンで「3.14 * 45.6」という命令を書いたときに演算されるのは浮動小数点演算なのか、固定小数点演算なのかがわかりません。例えばIntelのx86CPUは、内部にFPUを持っているそうですが、この場合は「3.14 * 45.6」は、内部では必ず浮動小数点演算になっているということなのでしょうか? 「3.14 * 45.6」を「3.14E0 * 4.56E1」と書いた場合にしか浮動小数点演算されないということではないと思っているのですが、実際の浮動小数点演算と固定小数点演算の内部的な切り替えがわかりません。 理解が足りなくて、おかしな質問になっていましたら、その点もご指摘いただければうれしいです。

  • C言語での浮動小数点処理

    よろしくお願いいたします。 現在SH(32ビットCPU,スーパーエイチ)で浮動小数点が混入した計算式を展開し動作させています。 これをH8(3052クラス、16ビットCPU)で展開できないものかと苦慮しています。 そこで浮動小数点(4バイト)の四則演算をC言語で出来ないものかとライブラリーを探しています。 ライブラリーあるいは別の手段をご存知の方がいましたらぜひ教えてください。 よろしくお願いいたします。

  • Accessのフィールドサイズに関する素朴な質問です。

    Accessのテーブルで、フィールドサイズに[単精度浮動少数型]を設定して、そのフィールドを使って、クエリで演算フィールドを作成します。 単純な引き算でも、びっくりするくらい小数点以下の桁が表示されるのですが、どうしてなのでしょう? [単精度浮動少数型]より[倍精度浮動少数型]を使用したほうがよいと聞きましたが、設定の桁数の違い以外に、理由があるのでしょうか? Access初心者にも理解できるよう、ご解答いただけますでしょうか。 WindwosXP,Access2002を使用しております。

  • 整数実行ユニットとは

    整数実行ユニットとは 新しいCPUが開発されると、整数実行ユニットがどうの、浮動小数点演算がどうのと出てきます。 これらの意味とはなんなのでしょうか? ネットでCPUの情報を集めたりしますが、意味がわかりませんでした。 回答宜しくお願いします。

  • radion HDについて教えてください

    ATIさんのGPUはまだ使ったことがなくて、 OpenGL特化型も 開発がどうやら止まっているらしく 正直興味も無かったのですが、 映像系に強いとされるマシンのグラボが radion HDしか選べない状況から 興味を持ちました。 価格も Quadoro系と比べると 相対的に かなり割安なようですし そそられます。 使用用途は  ・OpenGLハードウエアアクセラレーション  ・倍精度浮動小数点演算支援  ・SLI的な使用環境 が 期待できれば と、考えています。 ところで radion HDのOpenGL対応は “なんちゃって”的だ と、いう方もおられて 少々不安です http://oshiete.coneco.net/qa1019928.html 確かに 考えてみれば「対応している」という事実と アクセラレーション度合いとは別話 これら  ・OpenGLハードウエアアクセラレーション  ・倍精度浮動小数点演算支援  ・SLI的な使用環境 の支援度合いについて 定量的に示した文献は どこかにありますでしょうか? できればSolidWorks上での評価が 有り難いのですが、 あと、 「nvidiaさんには こんな所無いけど ATIさんはこんなことしていて 興味深いよ」 と、 いったものがあれば 合わせてご教示頂ければ 幸いです。 どうぞ宜しくお願い致します。

  • スーパーπは、ALU(整数演算)か、FPU(浮動小数点演算)どちらの性

    スーパーπは、ALU(整数演算)か、FPU(浮動小数点演算)どちらの性能によってスコアが変わるのでしょうか? スーパーπについて調べると、「FPUの性能の比較対象になる」や「整数演算の比較対象になる」など両方の情報があります。 たしかに、L2キャッシュの大小でそこそこスコアが変わるので整数演算の可能性もあります。 しかし、SSSE3対応以前のCPUのスコアがあまり高くないので、浮動小数点演算の可能性もあります。 みなさんは、スーパーπがどちらの比較をしていると考えますか? スーパーπ http://www1.coralnet.or.jp/kusuto/PI/super_pi.html