新しいサーバー導入、でもアプリケーションは速くならず。。。

今までは、「サーバーを新しいものに入れ替えることでアプリケーションのパフォーマンス向上を図る」こともあったと思います。

導入当時は高速なサーバーも、数年経てばPCにも負けるほど、ハードウェアの進化には凄まじいものがありました。

しかし、先日 Windows 上で動作するアプリケーションを開発してくれているパートナー様向けにWindows Server 2008 (当時は"Longhorn") のセミナーをした際、登壇していただいたIntel さんが面白い話しをしてくれました。要約するとこんな感じです。

「これからのCPUの高速化は、クロック数を上げるよりもコア数を増やす方向になってきているので、アプリケーションの作り方をきちんと考えなければ、新しいサーバーが出た時に、速くなるアプリケーションと速くならないアプリケーションが出てきます。

皆さんのアプリケーションはどちらですか?」

その前後にもいろんなお話しをしていただいたのですが、そこは割愛するとして、CPU のマルチコア化が進むことになり、(極端に言えば)クロック スピードのみに依存しているアプリケーションのスピードアップはもう望めない、もっと言うと、ハードウェアの進化について行けないアプリケーションが出てくるということなのです。

Intel さんの話しは、そこから「マルチスレッド化の重要性」とIntelさんが出しているマルチスレッドアプリケーションを開発する際に利用するツール群の紹介へと続いた訳ですが、アプリケーション開発には無縁な私でも、これはきちんと皆さんに伝えなければと思いました。

さらに、最近米国マイクロソフトの情報を見ていると、マルチスレッドに関する情報発信が増えてきているようですし、Windows Vista そして Windows Server 2008 はまさにマルチコアの時代に生まれた製品なので、新しいOSの機能と共に是非皆さんも注目してもらえればと思います。