ハードウエア・チューニングにおいても,目指すのはボトルネックの解消である。ただし,実際にはボトルネックを完全になくすことはできない。チューニングによりあるコンポーネントがボトルネックではなくなったとしても,今度は別のコンポーネントがボトルネックになってしまうからだ。

 チューニングとは,このボトルネックによる影響を最小限に抑えるように最適化していくことにほかならない。

 ファイル・サーバーを例にとろう(図1)。クライアント・コンピュータからファイル・サーバーに読み出し/書き込まれるデータは,(1)のネットワーク・スイッチから(6)のハード・ディスク装置の間を順次通過していくことになる。

図1●クライアント・コンピュータからファイル・サーバーまでのデータの流れ
図1●クライアント・コンピュータからファイル・サーバーまでのデータの流れ
[画像のクリックで拡大表示]

 クライアント・コンピュータのファイル・サーバーへのアクセス・パターンやデータ量などによって,(1)から(6)のどの個所がボトルネックになるのかが変わってくる。

 それを見極めた上でハードウエア・チューニングを施す。最適化されたファイル・サーバーを構築するには,各ハードウエア・コンポーネントがパフォーマンスにどのような影響を与えるのかを事前に理解している必要がある。

サーバーのボトルネックとなる個所

 IA(Intel Architecture)サーバーのパフォーマンスに影響を与え,ボトルネックになり得る代表的なコンポーネントには次のようなものがある。

●CPU
●メモリー
●PCIバス
●外部記憶装置(HDDなど)
●ネットワーク

 この5つのコンポーネントそれぞれについて,ハードウエアの構成による違いがパフォーマンスにどのような影響を与えるのか,どのようにしてチューニングすればよいのかを説明していく。