• ベストアンサー

CPUのビットの違いとパフォーマンスについて

質問は基本ビット数が多いほうが早いのか、他に犠牲にしていることはないのか、ということです。 20年ほど前(もっと前か)、8ビットのゲームパソコンが全盛の中、ぴゅうたという画期的なゲームパソコンが発売されました。 言語が日本語ベーシック。たしか「…行目に行け」とか「もし」とかそんな感じで入力するプログラミング言語だったと記憶しています。そのCPUはなぜか16ビット。16ビットの恩恵を受けることができる性能だったのかどうかはよくわかりませんが非常に驚きと疑問を感じたのを覚えています…、長くなりそうなのでやめます。 質問は以下です。1つ以上どれでもいいのでご回答お願いしたいと思っています。 1)ビット数は1クロックの命令でCPUに送信される情報の量だという認識を持っていますが、これはあっていますか? 2)このビット数を上げることによるデメリットというのは何かあるのでしょうか?何かを犠牲にしているとか、熱くなるとか、難しいとか。 3)現実問題として現在の32ビットの性能で不足しているというか足りないとい問題が発生しているのでしょうか?もしわかれば具体例も。 4)なぜ64ビットが製造され始めたのか。その背景。ニーズはないけどシーズができたから?すなわち作れる技術が確立されたから?時代の要請ですか? 5)ぴゅうたは16ビットの意味があったのか?使ったことのある人の感想とか思い出話でも歓迎。 いっぺんにいろいろ質問してしまってすみませんが、よろしくお願いします。

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

  • ベストアンサー
  • parts
  • ベストアンサー率62% (6364/10149)
回答No.6

1は、まあそういう見方で言えばそうですね。処理として言えば、一回に行える演算性能を指します。64bitは2の64乗となる18446744073709551616の数値を扱うことができるとということになりますね。メモリでは最大で16EBのメモリを実装できます。 ちなみに、32bitだと4294967296になり、メモリ実装値で表せば4GBになります。 2には、犠牲にするのは製造コストの増大、アーキテクチャの複雑化などがあります。それに伴い発熱も増えますが、これらは製造量や技術の発達よって削減することが可能です。 では、変えられない犠牲となるのは何かというと、ソフトウェア資産に対するパフォーマンスでしょう。64bitを生かし広域なメモリと64bitによるデータビット幅の恩恵などを受けるにはそれに対応したアプリケーションが必要です。 64bitを生かすにはそれを生かせる環境が必要なのです。 例えば、ABCDという独立した処理が32bitであったとしましょう。 それを64bitに対応させるとして、ABの二つに減らすことが出来ればパフォーマンスは向上しますが、理由がありまとめられず、機能は同じでそのままであればその効率は下がることになります。要はプログラミングの仕方一つで性能は変化することになり、生かすことも殺すことも出来ます。そして、プログラミングをするソフトもそういう最適化に対応している必要があります。 もちろん、OSの対応も必要で、32bitのソフトを64bitのOSでそのまま動かすと、WindowsならWOW64を噛ませて使う必要がありパフォーマンスは低下します。 また、必ずしも資産が移植できるとは限りません。64bitになるということは、その設計思想も拡張されることを意味するため、互換性をハードウェアに持っていても64bitのOS、ハードウェア環境では動作しない32bit資産も登場する可能性が高くなるのです。それらの点が犠牲になる部分です。 4は、最初に登場したのはDECのAlphaプロセッサですね。94年頃だったと思うが、これがRISC型ですが最初に登場した製品です。当時は、まだ時期尚早という話もあったとうるですが覚えています。理由はサーバでもまだ4GBのメモリに達していなかったことでしょうね。そして、何よりソフトウェア資産がまだ整っていませんでしたからね。 しかし、サーバ用として普及していき、長い間世界最速の称号を持っていたと記憶しています。今ではサーバやワークステーションでは64bitでなければ、メモリが不足するという事態がたびたび発生します。 これはニーズであるという回答がありますが、エンドユーザーにとってはニーズも何もないでしょう。今これが必要だと胸を張って言える人は、一般のパソコンユーザーの1割もいないはずです。むしろ、64bitすら何なのか分からないでしょう。512bitが出ているという人がいるぐらいですからね。(*ちなみにGPUの512bitはデータバス幅です。処理幅ではありません)そう考えると、エンドユーザーにとっては必要性よりも、技術ありきの必要性が後になります。 これは、Alphaでも当時は少なからずそうだったと思っています。ただ、それにニーズであるインターネット技術やマルチメディア技術が追いついてきた結果今に至ったのです。 ただ、はっきりと言えるのは今エンドユーザーにとってニーズはなくとも、数年後には時代にとって必要不可欠になるのは間違いないと思われます。まあ、全てのパソコンに必要になるのかは分かりませんけどね。 5はう~ん記憶にないな・・・

arakororin
質問者

お礼

>機能は同じでそのままであればその効率は下がることになります。 なるほど。私の理解をやや超えている部分の話ですが、なんとなく納得です。 >64bitになるということは、その設計思想も拡張されることを意味するため、互換性をハードウェアに持っていても64bitのOS、ハードウェア環境では動作しない32bit資産も登場する可能性が高くなるのです。 なるほど。面倒くさいですね。これならJavaとか.netとかはやる理由ですよね。 >エンドユーザーにとってはニーズも何もないでしょう。 >必要性よりも、技術ありきの必要性が後になります。 そう。ニーズがないのに買っちゃいました。 >*ちなみにGPUの512bitはデータバス幅です あ、違うんですか… 丁寧なご回答、どうもありがとうございました。

その他の回答 (5)

noname#17165
noname#17165
回答No.5

1)CPUのビット数は1サイクルタイムで演算可能な最大ビット数を示します。 2)一度に演算可能なビット数を増やすと演算回路がそれだけ複雑になっていきますので、 必要以上に増やせば回路の肥大化や、消費電力の増大といった点がデメリットが出てきます。 3)今の所、メモリ空間の不足が一番の要因ですが、科学技術系の計算や天文学では、 有効桁が多くなって困ると言った話が存在しないので、需要が高まれば増え続けます。 4)当然ニーズです。 何事でもそうですが、ニーズが見込めなければ商品化はありません。 (技術的には、GPUが512ビットに突入しています。) 5)ぴゅうたのCPUは、今で言うGPUで演算能力に関しては当時の8ビットCPUよりやや劣る レベルのものでした。 だから、16ピットパソコンというには無理が有ったといえます。 それでも、プログラミングが可能であったので、トイコンピュータとしては十分に使える 出来でしたね。

arakororin
質問者

お礼

>技術的には、GPUが512ビットに突入しています。 なにそれ?もう想像できませんね。ポカーンです。 >当然ニーズです。 そうですか。どこで求めらているのか少し疑問です。そして私も何で買ってしまったのか少し疑問です。まだまったく恩恵を受けられていないので。 参考になりました。ありがとうございます。

  • noranuko
  • ベストアンサー率46% (620/1332)
回答No.4

ちょっと4と3に追加。 PC用に使われている64bitCPU限定の話ですが、 32bitCPUでは、有る程度過去のCPUとのしがらみがあるので根本的な性能上の問題を解決することが難しかったりします。 なので64bitにするとき、そういった部分を解決できるように設計していたりします。 Athlon64の場合x86系CPUの弱点のひとつであるレジスタが少ないという点を、 64bit時には倍の数を使えるようにして対処しています。 これば命令コード(ソフトがCPUに命令するための信号)が変わらなければ対応できない問題なので、 64bit化しなければ解決できなかった問題であるといえます。

arakororin
質問者

お礼

む、コアの話はよくわからないのですが、何か理由があったのですね。ありがとうございます。

  • noranuko
  • ベストアンサー率46% (620/1332)
回答No.3

1)ちょっと違う。bit数はその桁数までの数値をCPUが扱えることを示します。 64ビットだと2の64乗までの数値を扱えます。 簡単に言うと、32bitCPUは約40億の数値まで計算できます。 64bitになると、約1600京までの数値まで扱えます。 これ以上の数値を計算するには、もう一ひねりする必要があるので速度が落ちます。 (まぁ40億以上の数値を扱うことはあるでしょうが、1600京という数値を扱うことはほとんどありえないでしょう) で、この数値はメモリアドレスを示すのに使われるため、 32bitのCPUでは4GBで、64bitは16EB(エクサバイト4GBの4G倍)まで扱えるようになります。 2)CPU側としてはハードウェアの回路が大きくなるので、十分に小さく作れるようになるまでは価格が高い。 -ので場合によっては32bitよりCPUに機能が詰め込めない場合も有る。 ソフトウェア側としては、CPUのコードが変わるので対応するソフトが必要になる。 (x86系のCPUは16,32,64とそれぞれ低いbitのコードも有る程度制限はありますが、 動作できるのであまり問題ではありません) 3)メモリの容量。 特にサーバーやワークステーション向けとしてはすでに4GB以上のメモリが要求されています。 4)結局のところ上で書いたように、サーバ、ワークステーション等が4GB以上のメモリを必要とし、64bitCPUが作られています。 そういったCPUをベースとしていたり(MacのPowerPC、IBMのサーバCPU,Powerがベース)、 そういったCPUのベースだったり(XeonのベースであるPen4、OpteronのベースであるAthlon64) するからです。 どちらにしろコンシューマ側としても将来的に4GB超のメモリを載せることができるようにはなりますから、 ソフト・ハードを普及させるにはそろそろ種をまいていないとまずいでしょう。 まぁマーケティング上の問題もあるかと思いますが。 5)意味があったかどうかは知りませんが、 当時(1982)は32bitCPUであるi386(1985)の発売前ですし、 PCとしてもWindows95が出るまで、ソフトの方も16bitでほとんどが作られていましたから、 16bitで問題なかったのでしょう。

arakororin
質問者

お礼

>32bitCPUは約40億の数値まで これだけ見ると、32ビットでは足りない気もしますね。 >意味があったかどうかは知りませんが 後発の8ビット機、ファミコンとかMSXとかに比べ低性能に見えたんで、でもあれはコンピュータ史に残る珍マシンだったと思います。 参考になりました。ありがとうございます。

  • JP002086
  • ベストアンサー率35% (1461/4153)
回答No.2

1についてですが、簡単に言うと「整数演算と行う際のビット数」と覚えて下さい。 2についてですが、32bitと64bitの処理の違いにより、アプリケーションをそのまま使うことが出来ません(完全に64bit専用にすると)。 3についてですが、現時点では特殊用途でしか使われていません。  それは、データバスの数やアドレスバスの数が32bitよりも多く、  適したアプリケーションを使っているならば高速に処理が可能だからです。 4については、2極化が考えられます。  1つは、3でも書いたとおり一気に大量データ処理を高速に行いたい。  もう1つは、1台で高速に複数処理を行いたいと言うニーズです。  前者は、インテルで言いますとItanium 2 プロセッサやXeonプロセッサ  の7000番台がそれにあたります。  後者は、Pentium プロセッサ エクストリーム・エディションがそれにあたります。 余談ですが、64BitCPUに最適化されていないアプリケーションを使うと どうなるか? と言いますと、32bitより遅くなる場合もあります。 これは、32bitをエミュレーションしなければならない機能が働くためです。 そのため、OSに関係なく動けるハード(特に、マルチ機能搭載の高速レーザープリンタなのですが)は、初めから特別に作られた64bitCPUを使っています。 あと、使われている所としては、特殊で高価なGPU(3D処理系のグラフィック・プロセッサ)を必要とする分野には、すでに入り込んでいます。 ご参考にどうぞ

arakororin
質問者

お礼

32bitから64bitへの以降は大事件なんですね。本当は。 あんまりメリットもないようですね。何でそういう方向に進んでるんですかね? 参考になりました。ありがとうございます。

回答No.1

1)についてはそういう認識でいいんじゃないでしょうか。 2)ビット数を上げるデメリットは周辺機器、ドライバが対応しない事ではないでしょうか。発熱等は技術進歩もありますから一概に言えないと思いますが。 3)32bitでは不足している性能って言ってもエンドユーザーにはあまり恩恵はない気がします。64bitでメモリーが4GB以上搭載できる等のメリットはありますが、現実に32bitで4GBものメモリーを搭載できるPCも市販ではまだ少数ですし、僕は4GBメモリー搭載可能なPCですが、そこまでは正直必要は感じません。(現状は1GB搭載です)また、未だ256MBメモリーのPCも堂々と販売されて、それを求めるエンドユーザーもいます。余程の高度な使用以外では必要はなさそうです。 4)作れる技術が開発され、販売政策としておいしいからじゃないですか? 3)でも触れましたがエンドユーザーはそこまで必要ではなさそうな気がします。メモリーだって今はまだ1GBのメモリーならばかなり値段もしますし、(ちなみに今のPCをBTOした時に4GBメモリーはそれだけでオプション価格は12万円でした)誰が付けるんでしょうかね?思わずメーカーに聞きたくなりました。(HDDの2TBで19万円はまだ許せますが、それだって乗せられるからBTOに入ってる気がしますよ) 5)そのゲーム知りません。ゴメンナサイ。(泣)

arakororin
質問者

お礼

勉強になりますー。ありがとうございました。 メモリの上限があるんですね…。サーバー機で必要になるのでしょうね。

関連するQ&A

  • 今のパソコンのCPUって、何ビットなの?

    昔のパソコンだと、CPUの性能を語る時には必ず8ビットとか16ビットとか言っていたものですが、32ビットになってからはそういう話は殆どされなくなりました。 今では、CPUのビット数を誇らしげに出しているのはゲーム機ぐらいです。 しかし、自分が持っているパソコンのCPUのビット数がよく分からないというのも寂しい気がします。 今のパソコンのCPU(PentiumやPowerPC)って、何ビットなんでしょうか? また、これからはどうなるのでしょうか?

  • 64ビットCPUについて

     友人が新しいパソコンを自作したいのですが、一緒に CPUについて調べていますが、AMD Athlon 64が発表され て、彼が「64ビット」という言葉にあこがれて、その Athlon 64を決めろうとするが、僕にとってはPentium 4HT、HTテクノロジーではいいではないかと思っていま すが、ちょっと64ビットCPUについて、 1. 64ビットCPUといっても、OS (Windows XP)や 他のソフトウェアは32ビットで、その64ビットCPU は本当の性能が発揮できますか。 2. RAMについてですが、もし将来64ビットアプリ ケーションがあたら、どのぐらい RAMが必要でしょう か。普通の32ビットCPU(Pentium 4など)Windows  XPでは512MBのRAMでいいですが。。。 宜しくお願い致します。

  • パソコンのCPUは1ビットなんですか?

    タイトルに書いた質問自体がナンセンスなのかもしれません。 そもそも、ハードとしては16ビットも、32ビットも、64ビットも、もしかして128ビットも無く、単に1ビットものなのではないかと思うようになりました。 要するにCPUは単に1ビットずつ処理するだけで、それを、どの単位(32ビット単位とか、64ビット単位とか)にまとめて運ぶか(何処にって、良くは分かりませんが、演算するところとか、周辺装置とのインターフェイスとか、との間で行ったり来たりするのではないのかな)は、OSが決めることなんでしょうか? そのように考えると、アプリはOSのビット数以下でないとうまく動作しないのだろうと思います。 いや、OSが何回かに分けてやれば、32ビットのOSても、16ビットのOSても、64ビットのアプリを処理できるのかな。 質問がそれてしまいましたが、要するにハードウエアには、たとえば16ビットCPUとか、32ビットCPUなどというものは無く、したがってOSを換えればどんなハードでも64ビットマシンにも、あるいは128ビットマシンにもなるということなのかです。 だから、最新のパソコンを8ビットマシンとして使うこともできるということなのかです。 CPUが1ビットずつ処理すると言ったのは仮の話で、4ビット、8ビット、16ビットなど、いろいろあるのかもしれません。 そもそも、CPUのその辺からして良く分からないのです。 よろしくお願いします。

  • どちら高性能ですか。Windows7の64ビット版でcpuがcore2

    どちら高性能ですか。Windows7の64ビット版でcpuがcore2duo8500 メモリ8ギガのものと、windows7の32ビット版でcpuがcorei5-650 メモリ4ギガでは、どちらが単純に性能が良いといえますか?ゲームはせず、動画編集をやる程度です。 

  • 今後のCPUの歩み方

    今後のCPUはどのように歩んでいくと思いますか? このままムーアの法則にしたがって周波数は増えていくと思いますか? 確かCPUの発熱量は周波数に比例するとどこかで見た気がするのですが、もしそうならばこのまま周波数が増えていけば発熱量も増していき、そのうち冷却できなくなるのではないでしょうか?ということは、いずれCPUの性能の限界がきてしまうということになりますね? CPUの発熱をおさえつつ性能を上げる技術はあるのですか? それと、32ビットCPUや、64ビットCPUなどという言葉を耳にするのですが、このビットというのは何ですか?

  • ゲーム機は64ビットなのになんでWINは未だ32ビットなの?」・・・

    ある人から下記の質問されたのですがわかりません。 教えてください。 ゲーム機は64ビットなのになんでWINは未だ32ビットなの?」「現在64ビットのOSがあればそれは何?」「64ビットに対応するCPUは現在何?」「CPUの動作周波数とFSBの関係は?」

  • 任天堂64の64 CPUの仕組みについて

     ゲーム機とCPUの仕組みについていくつか質問させてください。最近パソコンの仕組みに興味を持ち始め、古本屋で発見した「はじめて読む8086」等を読んでいるのですが、いまいちよくわかりません。  ゲーム機、任天堂64の64とは64ビットのCPUを搭載しているのでそういう名前なのでしょうか?それとも”64ビット級ゲーム機”なので32ビットのCPUを2つ搭載しているということなのでしょうか?  次にCPUのしくみについてお伺いします。任天堂64に32ビットCPUが2つ搭載されているとします。その場合表現できる情報は65536の2倍のなるのですか?それとも単に65536の情報しか表現できず、2つのCPUのおかげで処理が速いということなのでしょうか?  次に「16ビット表現できる情報」についてお伺いします。最近、カラー表示の出来るの携帯電話で「65536色」と宣伝しているのを見かけます。この65536色というのはCPUが16ビットであると考えてよろしいのでしょうか?  32ビットのCPUで200万色表示できる液晶ディスプレイがあったとします。それとまったく同じ液晶ディスプレイに、16ビットCPUを使って色を表示させると200万の色を表示させることは可能ですか?それともどんな高性能の液晶ディスプレイを使おうが、やはり65536色しか表示させることは不可能なのでしょうか?  以上、パソコンの仕組みがまったくわかってない低レベルでどうしようもない質問ですが、お詳しい方どうかご教授ください。よろしくお願い致します。

  • 64ビットのCPUは、現在売られているソフトでも性能を十分に発揮できますか?

    今度パソコンを買い換えようと思うのですが、Athlonの64bitCPUなるものがあると聞いて、それ搭載のパソコンを買おうと思いました。 で、ホームページ↓を見たところ http://www.amd.com/jp-ja/Processors/ProductInformation/0,,30_118_4699_7980,00.html 32ビットのアプリケーションと64ビットのアプリケーションを同時にサポートすることとかいてあるのですが、今現在のアプリは、ほとんど32ビットの性能しか発揮できないとか、そういうことってあるんですかね? 今現在のアプリケーションが32ビットのCPU性能しか発揮できないなら、買うのをやめようかとおもいます。 だれか、わかる人がいたら教えてください。よろしくお願いします。

  • CPUについて・・

    パソコンの購入を考えています。 しかし、CPUについていまいちよくわかっていないので質問させてください。 例えば Athlon 64 3000+ とHT テクノロジ対応のPentium® 4 プロセッサ 530など、同等の周波数(実際には表示は違うのですが)で比べたときに、どちらの方が速度を実感できるのでしょうか? それに、64ビット対応OSがやっとでましたが64ビットOSのインストールされていない状態では64ビットCPUは意味がないのでしょうか?同じ周波数なら64ビットCPUの方が早く感じるのでしょうか?たいさがないのでしょうか?よろしくお願いいたします。

  • 同じクロック数(Ghz)のCPUの性能の違い

    同じクロック数(Ghz)のCPUの性能の違い パソコンの買い替えを予定しています。 オンラインゲームでファイナルファンタジー11というものをやりたいのですが、 クロック数(Ghz)が同じでも、違う種類のCPUならば、 何か違いがあるのでしょうか。 単純に推奨スペックのクロック数、Ghzと同じかそれ以上のCPUならば、 メーカーや種類が違っても、問題なく動くのでしょうか。 よろしくお願いいたします。