3DMarkベンチのスコア計算法から見た性能アップ研究
(本ページはプロモーションが含まれています)
【最も関連するページ】
グラフィック・チップ(GPU)性能比較と徹底的評価ページへ
今頃になって、いまさら?と云われそうですが、「3DMark06ベンチ」及び「3DMark Vantageベンチ」のスコア計算方法から、今一度、復習しておきたいと思い書きました。
と言いますのも、3D画像処理に高い性能のPCを探す時、3DMark ベンチマークを再三、利用していながら、基本的なことを見落としている人が多い気がしているからです。
このページは、PCグラフィック技術解説の第一人者である西川善司さん連載ページの「スコア計算方法」から引用させていただき、その計算式を利用し、実際の測定値を使って、3Dベンチマークの数字を上げる方法など、少し発展的に解釈を加えてみました。
計算式の背景など詳しく知りたい方は、是非下記のページをお読み下さい。
●3DMark06の秘密(4Gamer.net 連載記事、2006年)
● 完全理解「3DMark Vantage」(4Gamer.net 連載記事、2008年)
【3DMark06ベンチのスコア計算方法】
3DMark2006は、フューチャーマーク社が2006年に公開した3Dグラフィックス性能ベンチマークソフトです。
このテストには、DirectX 9.0Cから加わったプログラマブルシェーダ3.0(Shader Model 3.0,SM3.0と略)対応のグラフィックスチップが必要です。
最低動作環境は、
グラフィックカード:プログラマブルシェーダ2.0(SM2.0)以上、ビデオRAM:256MB以上、CPU動作速度:2.5GHz以上、メインメモリ:1GB以上、HDD空き容量:1.5GB以上です。
この最低環境のプログラマブルシェーダ2.0(SM2.0)世代のグラフィックスだと一部のテストを実行できず,総スコアが低下してしまいます。
その訳は、3DMark06ベンチのスコア計算方法がそう出来ているからです。3DMark06の秘密 第3回から引用すると、
1/スコア=1.7/(5Gs)+0.3/(5CPUs)
となります。
(←Return to Proxycon画面)
だだし、Gsは、グラフィックス性能スコア、CPUsは、CPU性能スコアです。
さらに、
まず、グラフィックス性能スコアGsは、
Gs=(SM2.0スコア+HDR&SM3.0スコア) ÷2
で計算します。
グラフィックスのSM2.0スコアは、「Return to Proxycon」と「Firefly Forest」の2つのグラフィックテストを通した結果であり、これはシェーダモデル2.0対応レベルの評価を行うグラフィックテストです。
そのテストシーン実行から計算した、それぞれのフレームレート(fps)を、SM2 GT1 fps、SM2 GT2 fpsとしている。
@:SM2.0 スコア=120 ×(SM2 GT1 fps+SM2 GT2 fps)÷2
(つまり、2つのテストのフレームレート(fps)平均値の60倍。) (Canyon Flight ドラゴン画面↓)
また、グラフィックスのHDR&SM3.0スコアは、HDR/SM3.0 対応の評価を行うGraphics Test 結果であり、テストは「Canyon Flight」と「Deep Freeze」の2つがある。
そのテストシーン実行から計算した、それぞれのフレームレート(fps)を、SM3 GT1 fps、SM3 GT2 fpsとしている。
A:HDR&SM3.0 スコア=100×(SM3 GT1 fps+SM3 GT2 fps)÷2
(つまり、2つのテストのフレームレート(fps)平均値の50倍。)
※)HDRレンダリングとは、「PCディスプレイで標準的な24bit“フルカラー”,1677万7216色を大きく超える色空間を使ってレンダリング(≒描画)すること。
グラフィックススコアGsは、上記の、@とAの平均値 (SM2.0スコア+HDR&SM3.0スコア) ÷2 である。
先ほど、「SM2.0世代のグラフィックスだと、HDR&SM3.0対応のテストを実行できず(SM3 GT2 fps=0)、総スコアが低下」と書きましたが、救済措置というのがあり、Gsは、SM2.0スコアの1/2とならず、0.75とするようです。(これは、SM2.0スコアが1.5倍に評価されたことと同じ)
(←CPU Test 画面)
次に、CPU性能スコアですが、CPU Testsのスコアは,CPUの演算性能とマルチスレッド性能を計測するものです。
計算式は、
B:CPUs=2500×平方根(CPU1 fps × CPU2 fps)
テストはデュアルコアCPUやHyper-Threadingテクノロジー採用CPUで有利になるような設計となっている。
実行条件を変えたテストプログラムの「CPU Test 1」と「CPU Test 2」という、2種類のテストにおける結果フレームレート(CPU1 fps、CPU2 fps)を合計し,その平方根を算出、それに2500を掛けたものがスコアになっている。
以上が、西川善司さんの「スコア計算方法」から引用させていただきました概要です。
ここで、最初に書いた、3DMark06ベンチのスコア計算式をもう一度ながめてみると、
1/スコア=1.7/(5Gs)+0.3/(5CPUs)
逆数表示を分かりやすく変形すると、
C:3DMark06スコア=16.7Gs/(5.7+Gs/Cs) となります。
ここで解りやすく、実際の測定した数字を入れて見ます。
@:SM2.0 スコア=8615、A:HDR&SM3.0 スコア=9585、B:CPUs=6424、
このとき、グラフィックススコアGsは、@とAの平均値の9100なので
3DMark06スコア=16.7x9100/(5.7+9100/6424)=21354
となるのですが、
計算式の中で、Gs/Csと、グラフィックススコアとCPUスコアの比が取られるところが大きなポイントです。この例では、9100/6424=1.4と、1に近い数字になります。
つまり、計算式Cの分母の効果が薄れてしまうのです。幾つかの実測値で、試したところ、このGs/Csは、0.8〜2.2程度の数字となることが解りました。
この時、総スコアは、グラフィックススコアGsに大きく比例し、Gsを2.1〜2.6倍した位の数字となります。
ここから、さらに3DMark06スコア計算式の特徴を眺めてみます。
【グラフィックス・カード性能アップの効き目】
【CPUを変えないで、グラフィックス性能を上げた時】
CPU性能が同じままで、グラフィックスカード変更の効果を知るために、CPU性能スコアを固定値Cs=Cとし、グラフィックススコアとCPUスコアの比Gs/Csを横軸にとった時のグラフを作成してみました。
実際のところ、Gs/Csの値は、1を中心として、0.1〜10以内くらいの数字に収まると思われます。
下記の表は、Gs/Cs=1〜3までのデータを当てはめた場合の総スコアへの効果を示しています。
CPU性能 | グラフィックススコア (Gs/Cs=1に対して) |
総スコアへの効果 |
---|---|---|
同一(Cs固定) | 20%アップ (Gs=1.2Cs) |
+16% |
同一 | 50%アップ (Gs=1.5Cs) |
+40% |
同一 | 80%アップ (Gs=1.8Cs) |
+60% |
同一 | 100%アップ(2倍) (Gs=2Cs) |
+74% |
同一 | 200%アップ(3倍) (Gs=3Cs) |
+130% |
同一 | 極限アップ (Gs=∞Cs) 実現不可 |
+568%(6.68倍)に漸近 |
以上から、総スコアは、グラフィックススコアGsに比例するのですが、100%(2倍)のカード性能アップを図っても、+74%程度の伸びくらいで、グラフィックスの増加率ほどは総スコアは伸びないことが解りました。また上限もあり、6.7倍を超えないことなどが解りました。
【CPU性能アップの効き目はどの程度?】
【グラフィックス性能を変えないで、CPU性能を上げた時】
グラフィックススコア | CPU性能 (Gs/Cs=1に対して) |
総スコアへの効果 |
---|---|---|
同一(Gs固定) | 20%アップ (Cs=1.2Gs) |
+2.2% |
同一 | 50%アップ (Cs=1.5Gs) |
+5% |
同一 | 80%アップ (Cs=1.8Gs) |
+6.8% |
同一 | 100%アップ(2倍) (Cs=2Gs) |
+7.7% |
同一 | 200%アップ(3倍) (Cs=3Gs) 実現可能? |
+10.7% |
同一 | 極限アップ (Cs=∞Gs) 実現不可 |
+17%に漸近 |
以上から、グラフィックス性能を変えないで、CPU性能を上げても、総スコアは、+10%以下程度の増加率で、ほとんど伸びないこと、また上限もあり、+17%を超えないことなどが解りました。
今回は、ここまでとし、「3DMark Vantageベンチ」のスコア計算方法は、次回に続くとします。
2010年3月記