森田 宏
日本ヒューレット・パッカード

 今回から3回にわたり,サーバー機向けメイン・メモリー(以下メモリー)の技術動向を解説する。メモリーはプロセッサ同様,サーバー機の性能向上を考える上で極めて重要なコンポーネントだ。プロセッサからメモリーへのアクセス速度がサーバー機全体の性能を大きく左右するからである。

 サーバーOSが起動すると,メモリー上にはOSの大部分とデータ,プログラムが読み込まれ,そこからプロセッサが適宜必要なものを呼び出して使う。ここでメモリーからのデータの読み出しや書き込みが遅いと,プロセッサでは「待ち」状態が頻繁に発生する。いくら高性能のプロセッサを利用しても,サーバー機の性能は上がらないということになる。

 前回まで3回にわたって連載してきた「変わるプロセッサ」編で触れたように,近年のプロセッサの進化は著しい。集積度はこの5年間で15倍に高まり,性能もこの3年間で7倍程度向上している。サーバー機全体の性能を上げるためには,メモリーの方もプロセッサに見合った進化をしなければならない。

 表1は,2003年と2008年における代表的なサーバー機のメモリー・スペックである。この間に,高速化だけでなく大容量化も急速に進んでいる。大容量化が進んだ最大の要因は,仮想化ソフトの登場だ。複数の仮想サーバーを1台の物理サーバーで動かす使い方が普及し,以前の数倍の容量が必要とされるようになった。


表1●2003年,2008年の代表的な2Uラックマウント型サーバー製品におけるメインメモリーの比較

 2003年2008年
メモリーモジュール名PC2100 DDRPC2-5300 DDR2
メモリー・モジュールレジスタ付きDIMMFB-DIMM
バス動作周波数133MHz333MHz
コンポーネント名DDR266DDR2-667
バンド幅2.1GB/秒5.3GB/秒
サーバー搭載可能容量12GB64GB
メモリー・スロット数68

DRAMメモリーの特徴を理解する

 「メモリーの変遷」編の初回は,サーバー機のメイン・メモリーとして普及したDRAM(Dynamic Random Access Memory)の動作や特徴を解説する。基本的な動作は今日に至るまで変わっておらず,最近のメモリー製品である「DDR-2 SDRAM」や「FB-DIMM」のスペックを理解する上でも,押さえておきたい。

 DRAMでは,データ記憶用のコンデンサに電荷が有るかどうかで1と0(すなわち1ビットのデータ)を表現する。このコンデンサと,読み書き(電荷の移動)を行うスイッチの役目を果たすトランジスタを1つずつペアにしたものを「セル(またはメモリー・セル)」と呼び,これが1ビットのデータを記憶する単位となる。

 ちなみにDRAMの特長は,プロセッサのキャッシュ・メモリーなどによく使われるSRAM(Static Random Access Memory)などに比べ,少ない半導体素子でセルを構成できることである。集積度やコストの面で有利なので,大容量を求められるメイン・メモリーに多く使われている。

 ただしDRAMでは,自然放電のためコンデンサ内の電荷を数ミリ秒しか維持できない,という問題がある。メモリー内のデータを保持するためには,定期的に各セルの内容をいったん読み出し,書き戻す「リフレッシュ動作」が必要になる。これがSRAMに対し「Dynamic(動的な)RAM」と名付けられた理由である。

 詳しくは次回に説明するが,DRAMにはアクセス速度などの点でいくつか弱点がある。それをカバーするため,今日までに様々な新しい技術が開発されている。