SSブログ

エクセルバージョンの違いによる処理速度差 [システムトレード]

エクセルのバージョンの違いにより、処理速度がどれくらい違うのか確認してみました。処理速度の基準としては、KFシステムクリエイターにおける最適化演算に掛かる時間を用いました。
Table1(720セル)とTable2(300セル)のテーブル演算を連続して行い、Table1演算終了時のラップタイムと全て終了した時の時間とを計測しました。

計測は、A~Dの4種類のパソコン環境で行いました。また、エクセルのバージョンは、各パソコン環境で異なりますが、エクセル97、2003、2007の3つのバージョンを用いました。

Aのパソコン環境では、エクセル97、2003、2007で比較を行い、エクセル97の処理時間を1とした時の、各バージョンの処理時間を()内に示しています。
また、エクセル2007の場合は、エクセル2003に対する処理時間も合わせて示しました。

また、パソコン環境の違いによって、処理速度がどれくらい異なるかを比較いたしました。B~Dのパソコン環境における処理時間が、Aのパソコン環境における同一エクセルバージョンの場合の処理時間の何倍であるかを()内に示しました。

結果を以下に記します。


A.Windows XP Professional SP3
  Intel Core 2 Duo E6550 @2.33GHz
  RAM 2GB

  1.MS Excel 97 SR-1
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:06'52"
  Total TIME:09'48"

  2.MS Office Excel 2003 SP3
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:07'16" (1.058)
  Total TIME:10'21" (1.056)
  2007保存後
  Table1 Lap:07'08" (1.039)
  Total TIME:10'09" (1.036)

  3.MS Office Excel 2007 SP1 互換モード マルチスレッド有効
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:08'18" (1.209, 1.142)
  Total TIME:11'39" (1.189, 1.126)

  4.MS Office Excel 2007 SP1 互換モード マルチスレッド無効
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:07'59" (1.163, 1.099)
  Total TIME:11'21" (1.158, 1.097)

  5.MS Office Excel 2007 SP1 標準モード(xlsb) マルチスレッド有効
  6770アルプス電気31a01.xlsb(リンク元も標準モード)
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:08'03" (1.172, 1.108)
  Total TIME:11'27" (1.168, 1.106)

  6.MS Office Excel 2007 SP1 標準モード(xlsb) マルチスレッド無効
  6770アルプス電気31a01.xlsb(リンク元も標準モード)
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:08'04" (1.175, 1.110)
  Total TIME:11'28" (1.170, 1.108)


B.Windows VISTA HOME BASIC SP1
  AMD Sempron 3400+ @1.80GHz
  RAM 1.00GB(内128MBをGPU割り当て)
  サイドバーON

  1.MS Office Excel 2003 SP3
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:15'26" (2.124)
  Total TIME:22'01" (2.127)

  2.MS Office Excel 2007 SP1 標準モード(xlsb) マルチスレッド有効
  6770アルプス電気31a01.xlsb(リンク元も標準モード)
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:16'13" (2.014)
  Total TIME:23'08" (2.020)


C.Windows XP Professional SP2
  AMD Athlon XP 2500+ @1.83GHz
  RAM 512MB(内32MBをGPU割り当て)

  1.MS Excel 97 SR-1
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:15'14" (2.218)
  Total TIME:21'44" (2.218)


D.Windows XP Professional SP3
  Intel Pentium 4 @1.92GHz
  RAM 512MB

  1.MS Excel 97 SR-1
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:22'03" (3.211)
  Total TIME:31'25" (3.206)

  2.MS Office Excel 2003 SP3
  6770アルプス電気31a01.xls
  1993/11/01~2008/07/11, Table1+2, H62, MAX
  Table1 Lap:23'56" (3.294)
  Total TIME:34'04" (3.291)


パソコン環境の違いにもよりますが、97⇒2003で6~8%程度、2003⇒2007で5~11%程度の処理時間増となります。
2003⇒2007では、VISTAの場合5%程度の増加に留まっています。これは、エクセル2007がVISTAで最適化されているためと考えられます。

また、以前、エクセル2007の互換モードで上書き保存したシステムを、エクセル2003で開いて最適化演算速度を測ると、元のシステムよりも速度が向上することを述べましたが、そのことを再び裏付ける結果が得られました。

ただし、それはエクセル97における最適化演算速度よりも遅いことから、エクセル2007における互換モードの保存形式が、エクセル2003とエクセル97の中間的な形態になっているのではないかということも考えられます。ただ、それが実行速度に影響を与えるのかと問われれば、はっきりしたことは分かりません。

上記の比較では、Windows XP⇒VISTAの場合の処理時間の増減が分かりませんが、BとCとの比較から、あまり差はないのかなという印象を受けます。
ただし、これはCPUのクロック周波数で比較した限りにおいての話であり、AMDの基準である2500+と3400+という数値で比較した場合は、VISTAは随分遅いということになってしまいます。

また、Dのパソコン環境は、クロック周波数の割には際立って遅いことが分かります。最近のCPUが、ノーマルのP4に対して、クロック周波数以上の性能向上を達成していることが見て取れます。
コンピュータテクノロジーは確実に進歩しています。

どれくらいの処理時間であればストレスを感じないか、という点につきましては、人それぞれですが、最適化演算そのものは夜間にバッチ処理で自動実行する場合が多いかと思います。
また、マルチコアCPUのパソコン環境で並列実行(エクセル2007のマルチスレッド計算ではありません)を行えば、その分実効速度は向上します。

そうすると、設定(例えばパラメータ)を変更した際に、どれくらいのレスポンスが得られるかが、ストレスを測る上での重要なポイントになるかと思います。
例えば、Aのパソコン環境の場合、1,020回の設定変更に対して、エクセル2003で10分21秒掛かっているわけですから、設定変更1回当たり0.6秒の時間しか要していないことになります。

これはほとんど一瞬であり、実使用上、ストレスを感じる場面は少ないものと思われます。このレスポンスの上限を1秒程度としますと、BやCの環境であれば、やや重いと感じるもののギリギリのラインなのではないかと思います。

最後に、昨日のコラムで、エクセル2007のマルチスレッド計算の弊害について触れましたが、実はシングルコアのCPUであっても、この問題は発生します。
シングルコアCPUに対して無理やりマルチスレッド計算を実行しようとして、事態はより深刻なものとなります。

エクセル2007においては、マイクロソフトからの明確な改善報告がない限り、マルチスレッド計算は無効にした方が無難だと考えます。

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

nice! 0

コメント 0

コメントを書く

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

Facebook コメント

トラックバック 0

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