メモリ搭載量とパフォーマンス

BUFFALO 広告より.

高速でますます使いやすくなるWindows Vista™。その性能をフルに発揮するにはメモリの増設が効果的!例えば100枚の画像ファイルを開くとき、WindowsXP・メモリ512MBのパソコンと同程度の処理スピードにするには、Windows Vista™ではメモリが1.5GB必要です。Windows Vista™には1GBのメモリをプラス!それだけでみちがえるように快適になります。

この手の広告やうたい文句ではスループットとレイテンシの区別をしないことが多く注意が必要です.長時間ジョブの所要時間が重要な人はスループット,「もっさり」かどうかが気になる人はレイテンシに着目すると良いでしょう.
また,線形的変化を誤解させるような説明にも気をつける必要があります.メモリ 512 MB で約 132 秒だったのが,メモリ 1.5 GB で約 41 秒になったとして,その前後のパフォーマンス向上曲線はどんな形をしているでしょうか?

プログラマの立場として一番困るのは,多くの人が水色のような曲線が普通と思い込んでしまうことです.残念ながら世の中そういう都合の良いアルゴリズムはそうそう無く,大抵は緑色や赤色のような状態でリリースされているわけですな.



メモリを使用したパフォーマンス改善方法ですが,いわゆる事前インデックス生成系の方法は,メモリを 2 倍消費してレイテンシが半分最適化初期段階では半分が実現できても最終的には線形にしか改善しない気がする,といったパターンが多いように思います.
一方キャッシュ系の方法では,宝くじ的というか,メモリ消費量を増やすと当たりくじが増えるという感じでしょうか.SuperFetch にしても,空きメモリが多くなればそれだけ「多くの」アプリケーションが事前読み込みされる(当たりくじが増える)ようになる一方,個々のアプリケーションの起動速度が搭載メモリ量に応じて速くなるかというとその辺は微妙(個々のくじの当選金額は据え置き),と.
Windows Vistaに足りないもの』じゃないですが,この辺分かりやすく説明するのは確かに難しいかもしれませんね.