パフォーマンス計測結果と分析
0.改定履歴
- 1998.03.14 初版
- 1999.12.05 会社関係の情報を消した
1.はじめに
このドキュメントは,NETM/DM配布に関係してのパフォーマンステストを行った結果である. また,テープ装置の不具合(バックアップ後排出されずSCSIエラーをおこす)問題についての解決作を考える.
2.計測について
NTサーバにて,NETM/DMを用いた配布を行うのでそれに伴うオブジェクト(監視項目)とカウンタ(監視項目の詳細)を選出して行った. 監視項目は次の通りである.
オブジェクト | 内容 |
---|---|
LogicalDisk | 論理ディスク毎の計測. 論理EドライブはソフトウェアRAIDとして運用している. |
Memory | メモリ使用率とページング発生についての計測. |
Network Interface | サーバのネットワーク負荷. |
Pagingf File | ページングファイルの状態 |
PhysicalDisk | 物理ディスク毎 |
Process | NETM/DMプロセスのCPU時間 |
Processor | CPUのBUSY. |
Server | サーバ全体のパフォーマンス |
SQLServer | データベース. |
System | システム全体の稼働状態. |
TCP | データ転送容量. |
今回分析する時間は次の通りである.
開始時間 | 終了時間 |
---|---|
|
|
3.全体図
約24時間監視した内容をグラフであらわすと次のようになる.

ここで大きく波形が乱れている点が2つあるので,これを“ポイント1”と“ポイント2”に分ける.
このグラフのグリッド(1マス)は,約1.2時間となる.(24時間÷20マス)
4.分析
4.1.ポイント1の分析
ポイント1では,NETM/DMを用いてデータの配布を行っている. これは,30クライアントに対して約150KBのデータを転送している.
よって,配布直後にプロセッサの負荷(赤線)が上がり,TCP/IPのデータ転送量(汚い色)が伴って増えている.
第2波形部分は,データ転送量が安定したにも関わらずプロセッサ負荷が高まっているのでNETM/DMでの完了処理のような事でも発生したと推測できる. これはNETM/DMのプロセスがプロセッサ時間を少し浪費している波形(ぶどう色)から推測できる.
4.2.ポイント2の分析
ポイント2は深夜時間に突入している. この時間の詳細は次の通りになる.

このデータでは,14日02:02.14〜07:00.39をあらわしている.1つのグリッドが約15分(300分÷20マス)となる.
ここでは,メモリのページアウト回数(青色)の波形が最大200回(グラフは100までなので出ていない)まで行われている.
このグラフからのページアウトが始まった時点は,だいたい3時と考えられ,終了は5時30分と考えられる. この時間には,ファイルのバックアップが行われていた. これを裏づけるイベントログが次のように残っている.

このバックアップについてさらに考えると,次のような分析が出来る.
- プロセッサは最初の15分で使用率が上がっているが,あとは安定して推移している.
- 最初に上がるのはバックアッププログラムが稼働し始める初期処理のようなものだと考えられる.
- 他のオブジェクト(監視項目)については,まったく目立った動きはない.
- 論理ディスクに対してのカウンタも負荷が見られない.
ここで,このバックアップ作業を整理する.
- 金曜日のバックアップはドライブFのフルバックアップである.
- ドライブFはNTのフォールトトレランス機能を用いたRAID運用である.
- ドライブFはファイルが入りきれないのでファイルシステムレベルで圧縮されている.
以上のように,ページングが大量に発生(つまりメモリ不足)している時間帯はバックアップ作業中であるが,ディスクI/Oを示すカウンタは波形に現れていない. つまりバックアップデータが大量にI/Oを行っているわけではない.
プロセッサの動きの波形を見ても,これがボトルネックとなっている可能性は無い.初期処理以外では20%前後で安定して推移しているからだ.
5.分析結果総評
5.1.ポイント1(NETM/DM)
NETM/DMの稼働では,それ自体の負荷は高くないが,ネットワークに流れるデータ容量が多くなるとそれに比例してプロセッサ全体の負荷が高くなるようである. より詳細に分析するには大量のデータを配布するときに再度計測し,データ量との比例データを取得する必要がある.
5.2.ポイント2(バックアップ)
ハードディスクへのアクセスが大量になく,プロセッサの負荷も低いが,ページングが大量に発生しメモリ負荷が高くなっている.
この状況を踏まえると,ハードディスクのデータが圧縮されていることが原因であると推測される.
NTのファイルシステム圧縮では,ファイル(データ)の読みだしを行う都度,ファイルの展開を行うが,この為にメモリを浪費していると考えられる.
具体的には,404,393,1284byte÷8,798sec=459,642.11003byte,つまり460k/秒でディスクからテープへデータを転送しているが,その転送中に一度ファイルシステムの圧縮状態で保存されているものから非圧縮へと展開され,さらにテープへ格納するために圧縮されるというこの作業をメモリ中にて行っているため,他プロセスが消費しているメモリをページアウトさせていると推測される.
6.ボトルネックの解消
サーバ負荷が高い時にテープ装置の不具合などが発生することが多い(根拠無し・経験値)なので,このボトルネックを解消すれば,ある程度の安定稼働が可能になるかと思われる.
以上の調査結果から,このサーバでもボトルネックはハードディスク容量であると言える. ハードディスクの容量確保の為にファイルシステムを圧縮していることで,メモリに負担をかけている事が判る. よって,圧縮せずに運用できるよう,ハードディスクの追加を行うべきである.