32 ビット アプリ用の 64 ビット ハードウェア上の 32 ビット Windows

32 ビット アプリ用の 64 ビット ハードウェア上の 32 ビット Windows

32 ビット アプリと 64 ビット PC (ハードウェア) があります。ハードウェア ベンダーは、64 ビット PC で 32 ビット アプリを実行する場合、アプリの最大パフォーマンスを得るには Win7 32 ビットで十分だと述べています。

私は同意しません。なぜなら、Windows 64 であれば、アプリが 32 ビットであっても、64 ビット ハードウェアで動作するのに最適化されているはずだからです。

私たちは言い争った。

そこで質問ですが、32 ビット アプリで最高のパフォーマンスが得られる構成は、「64 台の PC 上の Win32」か「64 台の PC 上の Win64」のどちらでしょうか。

答え1

32 ビット アプリで最高のパフォーマンスが得られるのは、「64 PC 上の Win32」と「64 PC 上の Win64」のどちらでしょうか?

答えは「場合によります」です。それを確認する唯一の方法は、ベンチマークを実行することです。

32 ビット アプリケーションは、高速に実行される場合もあれば、低速に実行される場合もあります。パフォーマンスに影響を与える競合する要因は多数あります。一般的に、どちらの方向でも差はそれほど大きくありません。

パフォーマンスは常にすべての要素が作用する現実の世界で発生するため、パフォーマンスの考慮から何らかの要素を正当に除外できるとは考えられません。速度は理論的なものではなく、単独で扱うことはできません。

以下は著者がベンチマークを行った記事です:

http://www.osnews.com/story/5768

彼はテストで 32 ビット バイナリの方が高速であることを発見しました。これは 2004 年初頭の SPARC でのことでした。

以下は、64 ビット アプリケーションへの移行に関する Intel の 2010 年の記事です。

http://software.intel.com/en-us/articles/32 ビット アプリケーションから 64 ビット アプリケーションへの移行-en/

この記事によると、64 ビット バイナリを使用すると計算が高速化されるため、計算量の多いコードは、適切に最適化されていれば高速化されるはずです。そうでない場合、64 ビット コードは遅くなる可能性があります。特に、メモリの消費量が多くなり、RAM へのアクセスに時間がかかる (キャッシュ ミスが頻繁に発生する) 可能性があるためです。

ソース32 ビット アプリは 64 ビット OS ではより速く、またはより遅く実行されますか? [終了]、回答者ネイトック

関連情報