111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111.
.情報処理システムの性能評価 (1)-調・紀一誠111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111の構成要素を組み合わせて構成される.これらの構成要

1.

素は総称して.

はじめに

r システム資源J といわれる.オペレーテイングシステムは，システム資源を効率よく使用しシステム性能評価 (Performance Evaluation) 技術ながら，利用者への十分なサーピスを提供するために，とは，対象とするシステムのハードウエアやソフトウエ様々なシステム資源の管理技法を駆使して，多種多様なアの構成が与えられ，システムにかかる負荷条件が明ら処理要求を制御する.システム性能評価技術が主な対象かにされたもとで，そのシステムの稼動状態や利用者へとするのはこのようなシステムの総合的な性能である.のサーピスの良し悪しを示す性能評価指標を定量的に明システム性能を考える際に大切な視点は，システムの総示する技術，と定義することができる.情報処理システ

合的な性能は単体性能の延長上には捉えられない，といムを利用する立場の一般利用者は，必要な機能と良好なう点であろう.例えば.

cpu を 3 倍速いものに置き換応答時間が実現できている限り，システム性能評価技術えたからといって，システム全体の処理能力が 3 倍向上そのものに関心をもっ機会は少ないかもしれない.しかするというものではない.システム性能を向上させるたし，システムを設計開発あるいは運用管理する立場にあめには，単体性能の向上，並列処理機能の拡充，制御方る技術者にとっては，担当する情報処理システムを成功式の改善等の総合的な対応、が必要であり，何をどのように導くために，所定の性能が正しく実現できるかどうに改普すればどこにどのような改善効果がどの程度期待か，という視点からの定量的なシステム性能評価は欠かできるのか，を定量的に明示する事がシステム性能評価

すことのできない大切な要素技術である.とりわけ，高技術の目的である.

度に発達した情報社会の公共基盤として機能する情報処
理システムの場合には，性能トラブルでシステムが正常に稼動できない事態が発生すると，その社会的影響も計り知れない程大きくなる場合があり，そのいくつかの例が [2] に報告されている.
一般の情報処理システムでは，パーソナルコンピュータのように利用者がシステムを個人で独占して使用するような形態ではなく，複数の利用者が非同期にそれぞれに処理要求を発生するような形態をとる.この処理要求のことをシステム形態にあわせて，パッチ処理システムの場合には「ジョプJ .リアルタイム処理システムの場合には「トランザクション」とよんでいる.また，シス
テムは一般に多種多様なハードウエア，ソフトウエア等
きのいっせい NEC C&C 研究所〒 216 川崎市宮前区宮崎会 1・ 1

1995 年 6 月号

2
. ベンチマークテスト
ペンチマーク (Benchmark) テストとは，性能を比較したいシステム上に共通のプログラムを実行させ，その実行速度を計測して比較を行う方法である.システムの構成要素の中で中核的な役割をはたす CPU について

は，標準的なベンチマークプログラムを用意して共通の評価指標のもとに実行速度を比較するという方法が昔から試みられている.最も良く知られているのは rMIPsJという単位であろう.

MIPS(MillionsInstructionsPerSecond) とは 1 秒間に 100 万命令を実行する速度を意味している.おもに，メインフレーム系統のマシンの性能を表示するのに用いられてきた.テストに使用されるプログラムは.

GibsonMix といわれる命令の出現頻度を規準にして，各メーカ毎に作成されている.ここで注意が必要なのは.

UNIX をオペレーテイングシステムとす© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

(29)315

るワークステーション系の CPU の性熊表示として使用としている.

TPC ベンチマークは現在.

される MIPS 値の場合は先に述べたメインフレーム系でB ， TPC・ C の 3 種類の標準ベンチマークが定義されてい使用される 100 万命令/秒という意味とは異なる意味でる.定義には，TPC-A ,TPC-トランザクションプロファイル，データ使用きれる点である.ワークステーション系の MIPS 値

ベース構成，測定環境，測定条件，応答時間の定義，価とは DEC 社の VAX・ 11/780 というマシンの性能を 1 と格に含まれるもの，完全に開示した報告書，第三者によした相対値の意味で使用され，一般にはドライストーンる監査，等々が含まれている.これらを完全に満たす条(Dhrystone) といわれるベンチマークプログラムを用い件で測定試験を行い，報告書を TPC に送付し，認定がて計測される.同じ単位を使用しているが，両者は別物得られればそのシステムの価格/性能値を公示してよいである.

事になっている.

CPU はシステム全体から見ればー構成要素であるが，ベンチマークテストは単純な MIPS 値比較にはじま

ミクロに見ればそれ自体も演算装置，パイプライン，り，総合的なシステム性能を計測する TPC ベンチマー

キャッシュ，データパス，メモリ等を装備した一つのシクテストへと発展をしてきた.本当に比較したり知りたステムであり，その実行速度は命令の出現頻度だけではいものはシステムの個々の構成要素の性能ではなく，利なく，そのアーキテクチャに依存して大きく変化する.

用者および運用管理者からみた総合的なシステム性能でそのため，特定の用途を想定して設計されたアーキテクある，という事を考えるとその意義は大きい.しかし，チヤに対応して，数値計算向け，記号処理向け，データベンチマークはあくまで性能比較のための標準テストでベース処理向け，画像処理向け，等々のベンチマークプあるという性格は変わるものではない.特定のアプリ

ログラムが開発され使用されている.詳しくは [6] を参

ケーションシステムの性能はそのシステムの個性にそっ照.て評価しなければならないことはいうまでもない.まベンチマークテストは共通のテストプログラムが実行されてこそ比較の意味がある.また，できることなた，標準ベンチマークが一度設定きれると，その条件にらベンチマークプログラムは利用者の実際に使用するプ

合わせて高速化をはかる特殊な工夫が加えられ記録のみログラムの動作を忠実に表現したものであって欲しい.

をねらう動きが生ずる事にも注意しておかなければならそのようなことから，メーカ毎に異なるテストプログラないだろう.結論として，いかなるベンチマークテスト

ムを用い，命令の出現頻度のみを強く意識した MIPS 値もシステム性能の一つのめやすに過ぎない，という事がによる評価指標に代わり，中立的な立場に立つ非営利の言えよう.

標準化団体によるベンチマークプラグラムの開発が行われるようになり，現在普及の過程にある.その代表的な

3.

利用者特性

ものが，オンライン・トランザクション処理 (OLTP:On

システム性能評価の第一歩は利用者がどのようなシス

LineTransaction Processing) の性能を測るベンチマー

テムの使い方をするのか，言い換えれば利用者はどのよ

クテストを開発する TPC(Transaction ProcessingPerｭ

うな形の負荷をシステムにかけてくるのかを知ることかformanceCouncil:トランザクション処理性能評議会).

ら始まる.利用者からの負荷を総称して，利用者特性ある主としてワークステーション系の標準ベンチマークの開いは利用者習性(ワークロード:WorkLoad) という.

発を行う SPEC(Systems Per
formanceEvaluationCかトランザクション処理システムを例にとり，必要なワー

operative: システム性能評議会).パソコン向けベンチ

クロード情報を以下に示す.

マークを手掛ける BAPCo(BusinessApplicationPer
ｭformance Corporation)

この内.

である [3].

ンチマークは他と性格を異にしている

TPC ベ

SPEC および

BAPCo が基本的には単体としての CPU 性能を測定する事を想定しているのにたいして.

TPC は業務を想定し・トランザクション種別:利用者特性を表現するために必要なトランザクションの種類.特徴的なもの，負荷として大きな割合を占めそうなもの等を選別する.

た標準的なトランザクションを設定し，データベースシ-トランザクション毎のシステム資源使用時間(シンステムを備えたサーバシステムに対して，複数の利用者グルプロファイル) :上記に選ばれたトランザクシヨから同時にトランザクションが発生する状況での性能測ン毎に.

定を行う.まさに，システム性能を測定することを目的

るシステム資源の使用時間を各システム資源毎に求1 トランザクション処理を行う問に使用すめる.

3
16(30)© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オベレーションズ・リサーチ

-負荷発生率(ワークロードミックス) :各トランザクション毎の負荷発生率の比(%).
-トランザクション発生率:

帯での平均負荷を考えているのかによって性能評価結果のもつ意味が異なってくる.負荷変動をみるためよく用

単位時間あたりに発生(到着)するトランザクション数(件/秒).

いられるものとしては，月変動，週変動，日変動，時間変動に加えて，最も負荷の高い時間帯の特性を用いる最繁時負荷がある.ひとたび平均値を得た後はその時間帯で以上に得られる情報をワークロードプロファイル (Workは定常状態が続いていると考えて種々の性能評価指標をLoadProfile) という.ワークロードプロファイルは利用算出して行く.

者がシステムをどのように利用するかという利用者固有の情報と，システム内部でそれぞれの処理がどのように行われるのかというシステム設計に関わる情報とが含まれている.

4.

システム性能評価指標

システムの性能を定量的に示す指標を性能評価指標

利用特性に関する情報は性能評価の前提になる重要という.総合的なシステム性能みるための性能評価指標

な情報なので，正確な情報の収集と利用者の十分な合意は，システムの利用者側の視点からのものとシステムのを得ておくことが大切である.この利用者特性を読み運用管理者側の視点のものと，大きく 2 種類に分けるこ間違えたため，深刻な性能問題を引き起こしてしまい，とができる.利用者側の視点からのものは，サーピスレ

システムが稼働できずに失敗した例が日経コンピュータ

ベルに関する指標で，の「動かないコンピュータシステム」に紹介されており

sponse Time)[5]. 教書11 的である.

Time) があげられ，運用管理者側の視点からは，システ

3.
1 平均ワ}クロード

ム資源の使用率，スループット等があげられる.

トランザクション応答時間 (Re­およびジョブの T AT (Turn Arround

ワークロードプロファイルが得られるとワークロードミックス情報をもとに，負荷の平均的な特性を表現する平均ワークロードを構成することができる.いまM種

類のトランザクションと N 種類のシステム資源でワークロードプロファイルが構成されているものとする.
ンザクション(i(j1 ， 2 ， ....M) の資源 j

1, 2, .一 ， N) の使用時間を Uij ， 発生率比を 'P i ，トラ

トランザクションの到着率(件/時間)を λ とする.ただし，トランザクションの応答時間ならびにジョブの TATは，どちらも利用者が処理をシステムに依頼してからその応答をもらうまでの時間として定義される.ここでは，前に紹介した TPC による応答時間の定義をクライアン
トサーバ型のシステム(図 1) の例にそって紹介する.のように定義される.

2ン i = 1

RT= 九一 T1 ・とする.このとき，平均ワークロードにおけるシステム資源 J の使用時間町は以下に得られる.

ここで.

M

また，トランザクションの応答時間 RT (ResponseTime) は以下

品4Uj

応答時間の定義

4.
1or j=1 ， 2 ，・・ .， N.
= 乞均約 f(1)トランザクション z の到着率はん =λ仰となるT1(2)T1 ， T2 は以下のように定義される.
入力メッセージの第 1 バイトがクライアント(端末)側からサーバ側に送信される直前の時刻.
五:出力メッセージの第 l バイトがザーパ側からクライアント側に到着した直後の時刻.

3.
2 負荷変動への対応

また，クライアント使用者がデータを入力したり考えシステムにかかる負荷は常に変動をしている.例えたりしている時間をクライアント思考時間あるいはデー

ば，一日のトランザクション発生量を時間帯毎に調べる

タ入力時間という.この聞はクライアント側での処理がと，午前半ばと午後半ばにピークがあり，昼休みには負行われるだけであり，ネットワークやサーバ側には負荷荷が低くなるような事が観測される場合がある.変動すはかかっていない.応答時間とクライアント思考時間をる負荷に対しては，ある時間を区切ってその聞の負荷の足したものをサイクルタイムと言うことがある.これら平均値をとることが最も一般的である.どのような時間の関係を図 2 に示す.

1995 年 6 月号

© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

(31)317%の応答時間は 2 秒以内でなければならない，と定められている.即ち応答時間の 90% 値は 2 秒以内である事がCUP要求されている.さらに，平均応答時間，応答時間の最Se
rverS
ystem

大値をはじめ様々な計測結果を報告する事が義務付けられている.

ベンチマークテストあるいはシミレーションのように芯答時間分布が測定により得られる場合には平均応答時

ws

WSX

PC

WS

閣や応答時間の 90 %値を求めるのは何の困難もない.しws

かし，待ち行列モデルを利用して性能予測を行う場合にC
lients

平均応答時間と応答時間の α% 値の関係を求める事は大変に難しい問題であり，種々の有効な手段を提供して

図 1: クライアントサーバシステムの一例

きた待ち行列理論も残念ながらまだこの問題を解決できるレベルには達していない.そうはいっても，実務上は何らかの目安を示唆する必要に迫られる事も多い.その場合には，待ち行列モデルの中で最も簡単な M/M/1 待クライアント側思考時間(データ入力時間)

サーバ側処理時間

国tーし，\/I~
クライアント側処理時間￨

ち行列モデルにおいて，系内滞在時間(待ち時間+処理時|司)は指数分布に従う事を利用し，T2うに求める事ができる.
u(α)

応答時間

ここでサイクルタイム

α% 値 u(α) を次のよ=-Uln(l-α)(3)

U は客の平均系内滞在時間即ち平均応答時間，ln は e を底とする対数である.関係式 (3) から応答時
図 2: 応答時間，思考時間，サイクルタイム

間の α%値が分かった場合の平均応答時間を求める事ができる.

例えば TPC に規定される条件である 90 %債が 2 秒の場合には.

4.
2 平均応答時間と 90% 値2.
0 = ‑Uln(l ー 0.9) からU=0.87 が得られ，平均応答時間は約 0.87 秒であることが分
応答時間は図 2 に示されるように，ネットワーク内をかる.また，式 (3) からは平均応答時間が得られた場合通過する時間とサーバ側の処理時聞から構成されていに応答時間の 90 %値を予測するためにも利用できる.

る.複数のクライアントから非同期にトランザクションえば，平均応答時間が 2 秒の場合には応答時間の 90 %値が発生している状況では，ネットワークおよびサーバのは.

内部のシステム資源 (CPU.

DBDISK. 他)で競合が発生し，処理待ち時間が発生する.この待ち時間は負荷(発生トランザクション数)が増加するにつれ増加するため，

f9lju
(0.
9)= -2.01n(1 ー 0.9) 土 4.6. から約 4.6 秒であることが分かる.

4.
3 スループット

応答時間も負荷の増加にともなって増加し，利用者へのスループットとは単位時間あたりにシステムが処理を. トランザクションの応答行ったトランザクションあるいはジョブの件数のことを時間を測定すると一般にはバラツキが観測される.このいい，システム効率に関する性能評価指標として用いら時，れる.特に OLTP の場合にはスループットの単位としサービスレベルは低下する.

トランザクションについての平均応答時間やその分布を調べてみる事ができる.これらは観測された平均応て 1 秒間に処理されるトランザクション数である TPS

答時間，観測された応答時間分布といわれる.

(TransactionsPerSecond) が用いられる.

一般に，確率変数 X(~ 0) とその分布関数 F(x)=P(X~ x) が与えられたとき，その分布の α% 値とは，システム資源の使用率はシステム運用の効率を判断すr定常状態」のもとに 15 分間程度の測定を;~一つの指標であり，運用対象となる時間に対する資源行い，その聞に開始し終了したトランザクションの内 90

318(32)

システム資源の使用率

TPC・ A ベンチ

α = F(x) となるような z を意味する.
マークでは.

4.
4使用時間の比として定義される.

© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オペレーションズ・リサーチ

資源の使用率が高いほど有効利用されているといえる

3 に示す.図 3 から分かるように，クライアント数の増が，同時に使用率が高いほど競合の発生も多く，待ち時加に従いスループット並びに各システム資源の使用率は聞の増加による応答時間の悪化が発生するのでその関係上昇して行き，次第にある上限値に漸近して行く.

をよく見極めることが必要である.資源の使用率は簡明

速く使用率が上昇するのは CPU であり，その使用率はな指標であるため，経験的な設計ガイドラインとして，次第に l に近づく.従って，この場合には，

例えば CPU 使用率は 80% 以下，のシステムのボトルネックである.その他のシステム資DK( ディスク)使用

最もCPU がこ率は 30% 以下になるように設計すること，といったよう

源 DK1 ， DK2 の使用率はそれぞれ，に使用される場合がある.しかし，これは大きな危険を近する.

もっている.システムはそれぞれ個性をもっており，どしでも使用率は 100% に近づくことはない.スループッの程度の資源使用率を基準として設計を行うのかは個別

トは上限値 2.0 TPS に漸近する.このことは，80% , 60%に漸CPU がボトルネックであるため，負荷を増加CPU がに検討していかなければならないし，またそれがシステボトルネックでありトランザクション当たりの CPU

ム技術者の仕事でもある.

時聞が 0.5 秒であることからも容易に理解される.

5. 指標聞の関係

ThroughputandResourceU
tilizatioDS

サーピスレベルに関する性能評価指標とシステム効率2.
0に関する性能評価指標は背反する関係にある.運用管理者はシステムをなるべく効率良く運用するためシステム資源の使用率を向上させたいと考える.一方利用者はなるべく迅速な応答を期待したい.しかし，負荷を増加させシステム資源の使用率を上げると応答時間は悪化する.即ち，両者の要求を同時に満足させることは原理的ーーー・-に無理なことなのである.システム性能評価の役割はこれらの評価指標問の関係を定量的に示すことによって，ーーー，ー-DKIU世包ation

80%

システム設計や運用管理を支援することにある.

ーーやーー

以下にこれらの指標の聞にある一般的な関係を以下の例題を通して示す.

cpuu副ization

100%

DK2U出zatl阻60%

CPU と 2 台のデータベース (DB)DISK を装備したサーバマシンにネットワークを介して n台のクライアントが接続されているクライアント・サー

バモデルを考える.

図 1 参照.次のようなシングルプロ
Clien阻ファイルワークロードを想定する.即ちトランザクションあたりの資源使用時間は，

CPU 時間 0.5 秒，

DB

縦軸:使用率 (x100%) ，スループット(件/秒)

DISK(l) および DB DISK(2) のアクセス時間がそれぞれ，0 .4秒，0.3 秒であるとする.また，クライアント側

図 3: 使用率とスループットの関係

での思考時間(データ入力時間)が 5 秒と与えられているとする.本例は，後に説明するセントラルサーバモデルを用いることにより，様々な性能評価指標を計算することができる.

スループットと応答時間使用率とスループットの関係を図 4 に示す.クライア

5.
1 資源使用率とボトルネック
システム全体の処理能力の上限値を決定付ける資源のことをボトルネックという.どのシステム資源がボトルネックになるかはそれぞれの資源の使用率を計算してみることにより分かる.クライアント数を増やしていった

場合の資源使用率およびスループット (TPS) の関係を図1995 年 6 月号

5.
2

ント数の増加につれ平均応答時間は，始めのうちは急速に増加するが，次第に増加傾向は直線的になって来る.

本

例では CPU がボトルネックであるため，負荷が大きい状態では系内に滞在する殆ど総てのトランザクションはCPU 待ちの状態にはいる.従って，平均応答時聞は傾きが 0.5(CPU 使用時間)の直線に漸近して行く.

© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

(33)319負荷の増加に伴い応答時間も増加して行く.図 5 にその増加の原因となる資源待ち時間の増加の様子を各資源毎に分析した結果を示す.待ち時間の増加は各資源について一様ではなく，ボトルネックである CPU の待ち時間の増加が最も激しいことが分かる.
.~ー町・

ResponseT面le6.

おわりに情報処理システムの性能評価を行うためには，対象となるシステムに関する十分な理解がまず必要となる.それに加えて，ペンチマークテスト技術，システム測定技術，シミュレーシヨン技術，待ち行列理論等の様々な理論や技術が総合的に必要とされる.

また，設計開発から運用管理にいたる各段階でシステム性能評価の目的，利用できる情報，作業工数，納期等々も変わるため，それらの要素技術をどのように駆使すれば効果的な性能評価が実施できるのかも変わってくる.

急速な技術革新が続く情報処理システムの性能評価を的確にかつ迅速に実行。

302。

唱。

。

Clients

するためには，性能評価に関する明確な方法論とそれを手順化して示すマニュアルの整備，それに沿って効率的

縦軸:応答時間(秒)，スループット(件/秒)に性能評価作業を進めることのできるさまざまなツール群の開発整備が欠かすことができない.本稿では，まず性能評価とはどんなものであるかの一端を紹介し，引き
図 4: スループットと応答時間の関係
ResponseTimeAnalysis

続く技術解説の導入とした.

参考文献[1]J. グレイ他著，渡辺栄一訳

OLTP システム[オンライントランザクション処理]，マグロウヒル，

1
991
.
g。

[2] 続発するオンライン事故大量トランザクションゆえの落とし穴:日経コンピュータ，"

1988,7.18.

問システム性能評価もオープンの時代に，日経コンClientsピュータ，•CPUTime•

CPUW副血. Time

•DKW，創出 aTimeロ

DKJJOT岡田

1992 ,9.2 1.

[4] 杉浦和史，必要性高まるシステムの事前性能評価，日経コンピュータ， 1991 ,6.3.

[5] 田口潤:ピーク時の処理能力読み違え実用化目前にダウン，動かないコンピュータシステム，日経コンピュータ 1987 ， 2.2.
R回p個師 T国e[6] 特集:ベンチマーク，情報処理，

vo1.31 ，

noム

1
990.
図 5: 応答時間分析

32 日 (34)© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オベレーションズ・リサーチ