64ビットプロセッサは、単に64ビットであるという理由だけで、32ビットプロセッサよりも「高速」ですか?[複製]


19

PAEなどのように、カットすることなくRAMに制限があるため、「32ビットは古いニュース」と言う人もいると思います。最初に、次の要因がプロセッサの速度自体に影響を与えると仮定します。

  1. マイクロアーキテクチャ設計。キャッシュサイズ、マイクロコードの実装(該当する場合)、データ/アドレスバスおよびレジスタ接続、そしてもちろん設計原則または構造などを意味します。

  2. クロック速度自体

  3. FSB速度(フロントサイドバス)などのバス速度および関連するもの。

  4. 並列処理、「ハイパースレッディング」、「ユニットの計算」、コプロセッサまたはバックグラウンドプロセッサでのオフロード作業、マルチコア環境などの特別な機能

プロセッサが32ビットであると仮定すると(そして、これらすべてが速度要因に重きを置いていると仮定すると)、64ビットだけであるという事実は、ビット幅、メモリアドレス指定、サイズなどの増加のためだけに高速になります。 ?

基本的に、2つの同一のプロセッサで、64ビットのプロセッサは、マシンコードのデコード、フェッチ、メモリへのアクセス、MMIO、計算などにおいて、以前の32ビットのクローンよりも一般的に高速ですか?


7
これは驚くほど良い質問です。タイトルが示唆するものとは対照的に、非常に限られた範囲で十分に表現されています。この形式にはぴったりだと思いますが、「広すぎる」として閉じる理由はありません。
マルクストーマス14年

私が参照している元の削除された質問へのリンク(タイトルはこの質問とほとんど同じです): 64ビットCPUは32ビットCPUよりもどれくらい高速ですか?
ブレークスルー14年

回答:


9

明らかに、大量のメモリを必要とするアプリケーションや、24億を超える多数のアプリケーションを含むアプリケーションでは、64ビットが大きな勝利です。一般的なコンピューティングの大きな部分であるプログラム命令と整数計算の場合、64ビットには本質的な利点はありません。正直なところ、誰が24億を超えてカウントする必要があるか、RAMの32ビットアドレス空間の価値以上を追跡する必要があるからです。

しかし、なぜこのような高速化が見られるのでしょうか?スマートコンパイラ。コンパイラは常に新しいトリックを学んでいます。ループスルーして100個の32ビット整数を合計するのと同じように、代わりに50個のvoidキャストされた64ビット数を追加し、その「64ビット」数の各部分の32ビットを追加できます。

しかし、「はい」と答える主な要因。あなたの質問に、64ビットプロセッサがメインメモリに持っているより広いデータパスアクセスです。

あるアーキテクチャの違いのベンチマークと説明、および他のアーキテクチャとの比較については、以下を参照してください。

http://zsmith.co/


0

理由は...いいえ。

より広いレジスタサイズのプロセッサは、同じクロックサイクルでより多くのビットを移動および処理できます。

ただし、その事実はクロック速度とは無関係です。そして、コンピューターが実行できるすべてのタスクが、より多くのビットを移動できることから恩恵を受けるわけではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.