SSブログ

OSやExcelバージョンの違いによる処理速度差 [システムトレード]

Gatewayマシンの導入によりクアッドコア+VISTAの環境を得ることが出来ましたので、トレーディングシステムの処理速度を様々な環境で比較してみました。
今回の評価には現在開発中のシステムを用い、それをクアッドコアマシン、デュアルコアマシンにおいて、Excel2003とExcel2007で、4並列~単独実行の時間を測定しました。

それらの評価環境を以下に示します。

A.クアッドコアマシン
  CPU:Core2Quad Q6700(2.66GHz)
  RAM:3GB
  OS :Windows VISTA Home Premium SP1

B.デュアルコアマシン
  CPU:Core2Duo E6550(2.33GHz)
  RAM:2GB
  OS :Windows Xp Professional SP3

エクセルはExcel2003 SP3 およびExcel2007 SP1を用いました。なお、マイクロソフト製品は最新バージョンに対してライセンスが付与されており、旧バージョンの使用についはダウングレード権が認められています。

従って、旧バージョン(Excel2003)を残した状態で最新バージョン(Excel2007)をインストールすることで、Excel2003を使用することが可能となります。
ただし、この辺りの厳密な解釈については、マイクロソフトに確認を取ったわけではありませんので、ひょっとしたら勘違いがあるかもしれません。

評価に用いたトレーディングシステムはトヨタの順張りシステムで、最適化に掛かる時間を計測しました。上述しましたように、システムは開発中のものを用いています。
テスト期間は1993年11月1日~2008年11月6日、テスト対象はKFインデックスです。テーブル1で大まかなパラメータ範囲を絞り込んだ後、テーブル2で最適パラメータを決定します。

システムは同内容のものを複数用意し、それらを同時に実行しています。今回は簡単のため、並列実行に際しては手動で行いました。
すなわち、予め開いておいた各システムの最適化演算ボタンを順に押していくだけです。

最初にボタンを押してから最後に演算が終了するまでの時間を、ストップウォッチで計測しました。したがって、並列実行時には1システム当り3秒程度のタイムラグが生じています。
クアッドコアマシンにおける4並列実行では、最初のシステムと4番目のシステムとの間に10秒程度の時間差が生じることになります。

また、当然ですが、クアッドコアマシンでは最大4並列実行、デュアルコアマシンでは最大2並列実行となります。
それらのトータル時間と、1システム当りの実効時間を求めました。結果を以下に記します。なお、1並列とは単独実行のことです。

 A.クアッドコアマシン
  Excel2003
    1並列:5'01"(1システム当り5'01")
    2並列:5'31"(1システム当り2'45")
    3並列:6'07"(1システム当り2'02")
    4並列:6'51"(1システム当り1'43")
  Excel2007
    1並列:5'28"(1システム当り5'28")
    2並列:6'04"(1システム当り3'02")
    3並列:6'57"(1システム当り2'19")
    4並列:8'05"(1システム当り2'01")

 B.デュアルコアマシン
  Excel2003
    1並列:5'02"(1システム当り5'02")
    2並列:5'41"(1システム当り2'50")
  Excel2007
    1並列:5'29"(1システム当り5'29")
    2並列:6'18"(1システム当り3'09")

以上の結果を見ますと、単独実行ではAとBはほとんど等しいことが分かります。すなわち、XpとVISTAの速度差は、CPUのクロック周波数が2.33GHzから2.66GHzになることで吸収されます。
逆に言えば、VISTAはXpよりも1割強ほど遅い、ということになります。

また、並列実行の同時実行数を増やすほど、1システム当りの実効処理速度は向上することが分かります。Aのマシン上のExcel2003で4並列処理を行なうと、1システム当りの最適化演算時間は2分を切ることになります。

Excel2003と2007の速度差は思った以上に大きく、単独実行では2007が1割程度遅いだけですが、並列度が高まるほど両者の差は開いていきます。
ちなみに、Excel2007においてマルチスレッド計算はオフにしています。

最後に、並列実行を行なうに当り、当初はAのマシンで何故かエラーが出て並列実行ができなという問題がありました。
いろいろと調べてみた結果、同マシンにプリインストールされていたGoogleデスクトップが悪影響を及ぼしていたことが分かりました。

同ソフトをアンインストールしたところ、少なくとも4並列まではエクセルを同時実行できるようになりました。
この手の相性問題は、これといった正解がないだけに、一度発生すると解決に手間取ってしまいます。無料ソフトだからと言って安易にインストールすると、痛い目を見ることがあります。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。