1つのドメインUにおける性能が、ほとんどドメイン0の性能と変わらないことがわかったところで、今度は2つのドメインUにおいて同時にコンパイルしてみます。
今回の環境では、前回のI/Oパフォーマンスチェックのようにスピンドルを分けることはせず、1つのディスク上に各ドメインUが用いるディスクイメージを用意しています。また、2つのドメインUは時間を同期させているので、前回同様atコマンドを用いることで同時にコンパイル作業を行うことが可能です。
今回の検証では「時刻の記録 → make → 時刻の記録」とするため、次のようにコマンドを実行しました。
wakatono@vifam7:~/vol3_2$ at 0230
warning: commands will be executed using /bin/sh
at> date >> ../compiletime
at> make
at> date >> ../compiletime
at> <EOT> ← Ctrl+Dを入力
job 2 at 2006-10-26 02:30
コマンド実行時のxentopの結果を図2、3に示します。
図2:ドメインU×1個の処理の負荷 (画像をクリックすると別ウィンドウに拡大図を表示します)
図3:ドメインU×1個の処理の負荷(図2とは別ドメイン) (画像をクリックすると別ウィンドウに拡大図を表示します)
I/Oが関わる以上、負荷が均等に分散してるとは言い難く、継続して性能を測定しても、CPU負荷が片方のドメインに偏ることがあるなどの事象が見られました。
ファイルcompiletimeに記録された結果は次のようになります。両方とも同じ程度の時間がかかっているので、片方の結果だけを以下に示します。
wakatono@vifam7:~/vol3_2$ cat compiletime
Wed Oct 25 23:15:01 JST 2006
Thu Oct 26 01:50:42 JST 2006
1つのドメインUにおけるコンパイル時間は、結果として155分41秒かかっています。1つのドメインU上で2度のコンパイル処理を実施した場合、おおよそ120分程度の処理時間で済むであろうことを考えると、性能は30%程度低いということになります。
|