ベンチマークについての追加情報 |
|
'Whetstone' はベンチマークの名前の一つで、その測定値は 参加者ごとの [Show computers] ウェブページに、 'Measured floating point speed' と表示されている値です。 'Dhrystone' もベンチマークの名前の一つで、その測定値は 'Measured integer speed' という欄に表示されています。 Floats は、小数部分をもつ数 (例: 1.48283 とか 3.141592)を指し、 Integers は整数(例: 1, 2, 938283 、2004など)を意味します。 Whetstone ベンチマークは、8種類の異なるテスト(もちろん繰り返し実行します) を実施して、完了までにかかる時間を測り、 [実施した演算回数]/[経過時間] を計算して結果とします。 これらのすべてのテストで、テストされる CPU の浮動小数点演算を使います。 いくつかのテストは単純な計算(加算、掛け算、割り算)ですが、 他のテストでは、三角関数と指数関数(sin, cos, tan, exp)を計算しています。 Dhrystone ベンチマークは、整数演算の繰り返しと オペレーティングシステムのファイル操作をいくつか検査します。
これらのどちらのベンチマークも、 そのシステムがメモリにどれだけの速度でアクセスできるかは検査しません。 そのメモリに、(たとえば) SETI@home は、とても多くアクセスしています。
メモリアクセスのために遅れが生じる例をあげましょう。 Pentium 4 CPU は、どんな速度のものであれ、 ある角度の sin の値を、内部クロックで 約 170 周期で計算できます。 この時間の間に、通常のレジスタ間の整数加算なら 170 回できます。
しかし、(たとえば数値の表を扱っている場合など)、 CPU の外のメモリ上にある数値で整数加算をしようとすると、 メモリ上の整数値を CPU まで持ってくるのに、 260 周期 ほど CPU は待たねばならないかもしれません。 ですから、悪いタイミングで実行された 整数 + メモリ 演算は、 1回の sin の計算よりもはるかに長い時間を要しかねません。
この点で、Celeron CPU は計算が遅くなります。 Pentium には CPU がメモリアクセスする時点を予測する仕組みがたくさんついていて、 CPU がメモリの内容を使って計算を実際に行うよりもかなり前に、 メモリアクセスを開始するようになっています。 この仕組みのおかげで、Pentium では多くの場合メモリ操作での遅延がとても少なく抑えられます。
SETI@home の計算は、ほとんど全部が、単精度浮動小数点演算ですが、 Whetstone はすべて倍精度浮動小数点演算で測定しています。 Intel x86 プロセサでは、単精度でも倍精度でも速度の差はあまりありません。
SETI@home は、加算、減算、掛け算、割り算を主に使います。 計算時間の 約 20% が三角関数の計算に使われます。 [一方、] Whetstone のほとんどすべての時間は、三角関数計算に使われています。
多くのシステムで、ベンチマーク結果と SETI@home の実際の処理速度とが
釣り合っていないのは、メモリアクセス速度と三角関数計算の件が大きな理由です。
この記事については、Ben Herndon さんに感謝します。
最終更新時刻 00:46:40, 2006年08月12日(JST)
Copyright © 2009 University of California.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software Foundation.
Copyright © 2009 Komori Hitoshi(je2bwm at jarl.com).
Japanese translation from English web pages on BOINC.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software Foundation.