同じコードで同じファイルなのに、高性能のノートPCよりディスクトップPCのほうが処理速度が早いという現状が起きています。
なぜなのか、どうすれば改善するのかをご存じの方がいらっしゃれば回答お願いします。
具体的にはいくつかの判断をさせて完了したらカウントが1進むコードを書いています。
それをキャプチャソフトで録画しています。
ノートPCでは0.07秒あたり約2カウント進むのですが、
ディスクトプPCでは0.07秒あたり約5カウント進みます。
Excelのバージョン・設定は同じです。
自動計算等もどちらも切っています。
ディスクトップPC core2 メモリ3G VISTA 32ビット
ノートPC cor i7 メモリ8G 7 64ビット
ノートの方が 64bit OSなのに対して office が 32bit で
VBA の実行が32bit で行われるためのオーバーヘッドかな。
にしては差がありすぎる肝するけど。
キャプチャソフトで録画しているとのことなので、
グラフィックボードの有無ではないでしょうか?
デスクトップの方にはそれなりのグラフィックボードが積まれているとか。
回答ありがとうございます。
ノートPCにはGT540M
ディスクトップPCには9800GT
とディスクトップの方が高性能VGAが搭載されていました。
早速、キャプチャソフトを使わず、10秒間で何カウント進むか表示するコードに書き換えて実証してみます。ありがとうございます。
1.キャプチャソフト 2.ビデオCodec 3.ビデオカード(ハードウェア) 4.ハードディスクの速度 のいずれかが原因でしょう。
1.については設定を見直してみてください。ただ、あまり効果はないでしょう。
2.については、入れ替えるのは少し難しいと思うので、そのままで。
3.については、ノートPCではチップセット内蔵グラフィックスでしょうから、たぶんどうしようもないでしょう。それだけメインメモリが多いなら、設定を変えてメモリをたくさん使うようにすれば速くなる可能性もありますが、違いが出てもわずかでしょう。
4.については、ノート用ハードディスクは通常、デスクトップ用よりも遅いので仕方ありません。どうしても速くしたいのなら、SSDに換装すれば目に見えて効果があるでしょう。
また、念のため、ノートの節電設定で低速運転されていないかチェックしてみてください。
1.ソフトも設定も1秒間のコマ数も全くおなじでした。
2.よくわからないです。
3.ビデオカードかもしれませんね。
4.ディスクトップはシリアルATA2でSSDをノートはシリアルATA3でSSDをつないでいます。
早速、キャプチャソフトを使わず、10秒間で何カウント進むか表示するコードに書き換えて実証してみます。ありがとうございます。
ノートの方が 64bit OSなのに対して office が 32bit で
VBA の実行が32bit で行われるためのオーバーヘッドかな。
にしては差がありすぎる肝するけど。
なるほど。そういう可能性もあるのですね!
共にSSDなのでちょっと入れ替えて実証してみます!
回答ありがとうございます。
なるほど。そういう可能性もあるのですね!
共にSSDなのでちょっと入れ替えて実証してみます!
回答ありがとうございます。