web-dev-qa-db-ja.com

x64とIA-64の違いは何ですか?

私はMicrosoftのWebサイトにいて、x64用とIA-64用の2つの異なるインストーラーに気付きました。参照: .NET Framework 4.5、4.5.1のインストール

私の理解では、IA-64はx64のサブクラスであるため、なぜ別のインストーラーが必要になるのか興味があります。

51
James Oravec

x64は、「古典的な」x86アーキテクチャの64ビット拡張の短期として使用されます。過去数年間に製造された「通常の」PCのほとんどは、そのようなアーキテクチャに基づいたプロセッサを備えています。

AMDはAMD64拡張を発明しました。 Intelは多かれ少なかれそれらを実装することを余儀なくされ、最初にIA-32e、次にEM64T、最後にIntel 64と呼ばれました(実際、AMDおよびIntel拡張はexactly同じですが、ほとんど同じです)。

多くの人々は、このようなものをx86-64と呼び、ベンダーに依存しない名前を持ち、x86アーキテクチャの64ビットの進化であるという事実を強調しています。 「64ビットプロセッサ」で販売されているすべての「通常の」PCは、x86-64アーキテクチャで実行されます。

IA-64(Intel Architecture 64)は、Intelが最初にハイエンドサーバー用に開発した、ほぼ完全に無関係な64ビットアーキテクチャ(Itaniumとも呼ばれます)です。 Itaniumはx86アーキテクチャの代わりになる可能性があると言われていましたが、このアーキテクチャは(さまざまな理由で)あまり成功していなかったため、IA-64インストーラーが必要になることはまずありません。

詳細については、ウィキペディアの記事で x86-64 および Itanium をご覧ください。

76
Matteo Italia

IA-64はIntel Itaniumアーキテクチャです。これは超長命令語(VLIW)プロセッサの命令セットです。

x86_64は、今日のコンピューターのすべてのラップトップ/デスクトップ内のプロセッサーで使用される通常の64ビットアーキテクチャです。このプロセッサは動的なプロセッサです。

これら2つの主な違いは、

VLIWでは、コンパイラーは命令間の依存関係を解決し、適切にスケジュールします。プロセッサは単にそれらを実行します。

動的プロセッサを使用すると、コンパイラは依存関係を心配せずに命令をスケジュールするだけです。プロセッサは依存関係を処理し、それらを並べ替えて適切に実行します。

VLIWコードは、各チップの内部アーキテクチャに依存しています。コンパイラはその情報を知る必要があります。それらの利点は、動的プロセッサが提供できるよりもはるかに多くの並列性を抽出できることです。

コードは、ダイナミックプロセッサの各チップの内部アーキテクチャに依存しません。命令セットに従うだけです。そのため、あるマシンでコンパイルされたコードは、他のマシンでも非常に簡単に実行できます。ただし、欠点は、動的プロセッサから限られた並列処理を活用できることです。また、内部ロジックと設計はVLIWよりも非常に複雑で複雑です。

それにもかかわらず、現在、動的プロセッサは主に消費者(個人)によって使用されているため、任意のマシンでコンパイル/生成されたコードを実行できます。 VLIWプロセッサは、サーバーおよびエンタープライズが生成できる並列処理のために使用されます。

28
Nick

彼らは違う

IA-64はitanium-サーバーのアーキテクチャです

x64は64ビットIntelコアとAMD cpusが実装するものです

12
Gir

x64は、x86命令セットの拡張であるx86-64の略です。

IA-64はItanium 64ビットアーキテクチャ用(Intel製)

5
Nasreddine

IA-64は、Intel Itanium 64ビットプロセッサを実行しているコンピューター用です。 x64プロセッサのような32ビットアプリケーションの実行はサポートしていません。これらのプロセッサで実行するには、Windowsの特別なバージョンが必要です。したがって、2つの異なるインストーラが必要です。

4
Jim

彼らは異なる命令セットを持っています、これが重要なポイントです。

0
Hardy Feng