
64ビット化による処理速度低下の要因について
Visual C++ 2008で作成した32ビットアプリケーションを
ネイティブなx64アプリとしてリビルドし、Windows7マシンで両者を比較したところ、
32ビット版に比べてx64版は実行処理速度が20%ほど低下してしまいました。
ソースは公開できませんが、30万行程の音声解析アプリケーションです。
どのサイトを見ても、x64版アプリの実行速度は多くの場合向上が見込まれる、
としか書かれていないのですが、速度が低下する要因としては何が考えられますか?
一般的なことで構いませんので、ご存知でしたら教えてください。
No.2ベストアンサー
- 回答日時:
プロセッサによっては 64ビットの整数演算を 1クロックでできないことがあるかもしれない.
ご回答ありがとうございます。
使用したCPUは、IntelのCore 2 Quad Q6600です。
こちらの面から調査したところ、確かに32ビットの最適化に比べて64ビットの最適化の性能が思わしくなく、命令の実行効率が若干落ちるとの記述が見受けられました。
Core i5やi7では改善されているようですが、あまりCPUによる制限は加えたくありません…。
もしCore 2系でも処理速度向上を狙うならば、8バイト変数を用いた64ビット専用命令での速度向上アプローチも考えないといけませんね。
No.1
- 回答日時:
以前日経Linuxで読んだものですが…
64ビットOSだと、メモリ関連が遅くなることがあるようです。
仮想メモリアドレスと物理メモリアドレスの変換テーブルのアクセスに関する問題…と書かれていたような。
しかし…それでも20%もの差が出るとは思えません。
アプリケーションは64ビットネイティブでも、コール先に32ビットが紛れ混んでいたりしないでしょうか?
# 無いとは思いますけど…
ご解答ありがとうございます。
念のため調べてみましたが、全てのバイナリは64ビットバイナリとして作成されています。
メモリ関連の問題は初耳です。調査してみようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
64ビット化による処理速度低下...
-
CPU、Z80からステート数から...
-
KBのMB違いって
-
1TBHDDに音楽ファイルは何ア...
-
携帯電話の略語であるMBって英...
-
1秒は何ミリ秒とか、単位変換の...
-
【有効数字について】 授業で、...
-
Excelの時刻の不思議
-
KBとMB
-
16進数どうしの乗算
-
動画容量10Gを50Mpdsでアップロ...
-
32bit = 4GB(バイト)?
-
24ビットのメモリー容量の求め...
-
1Mバイトって何バイト?
-
ジークアクスのサイコガンダム...
-
テキストの半角文字を全部削除...
-
10進数⇛2進数
-
行末のリターンを削除するユー...
-
12万の5%はいくらですか?
-
DVD-R 4.7GBって、何byte でし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
COM1(RS232C)とUSB仮想COMポー...
-
組み込みCプログラムで実数型
-
arduino
-
H8Sで割り込み発生時の飛び先ア...
-
プログラム言語FortranとCの違...
-
RPG画面系システムについて
-
私は
-
XMLのテキスト情報をHTMLに読み...
-
PICマイコンのプログラムについ...
-
IPCについて
-
応用情報技術者試験問題の解き...
-
32ビット用のソフトを64ビ...
-
VBSとVBA
-
任天堂64の64 CPUの仕...
-
なぜ、i++なのか?(ものすごく...
-
命令網羅率の計算問題です
-
64ビット化による処理速度低下...
-
ステート数とは
-
アセンブリ言語で。
-
CPU、Z80からステート数から...
おすすめ情報