SSD買ってみた。

RealSSD C300 64G
SATA3に対応してRead300MB/sくらい出るらしい。

なお、このブログではSATAIIという表記をする。
これはSATAに
「NCQ、AHCI、ホットプラグ、速度は3Gbps」
が追加された仕様である事を指す。
現在正式なバージョン表記とされているRevisionではない事に注意。

■Spec
OS:Windows7 x64
CPU:C2Q 9550 3.2GHz(OC済)
RAM:DDR2 800 4GB
GPU:NVIDIA GeForce 8600GS
M/B:GA-G33-DS3R
 CHIPSET:G33 – ICH9R
 SATAII:6ports(3Gb/s)
 PCI-E:1.0(250MB/s)
HDD:2TB x2 RAID1
HDD:500GB x3 RAID5

■何はともあれ付けてみた
なんとICH9RのSATAポートが埋まってしまっていた。
上記Specを見れば分かるように、HDDだけで5ポート、
それに光学ドライブを加えて1ポートである。
とりあえずマザーボードが別途用意しているSATAポート(GIGARAID)を
Enableにして光学ドライブをそちらに差し替える事にした。

GIGARAIDは、SATAIIを2ポートとPATAを1ポート増やすオンボードI/Fだ。
Windows標準ドライバで動くし、RAIDも使えて非常に便利なのだが、
PCI-Eにx1で接続されているため、最高で250MB/sが頭打ちとなる。
速度的に、こちらにSSDをつなぐ事は面白くなかった。

SSDにWindows7をインストールし、
ドライバのインストールとWindowsUpdateを全て終えてから速度を測ってみた。
再起動するたび、起動が超速いので胸わくわくだったが

シーケンシャルリードで200MB/s程度であった。
ベンチマークソフト:CrystalDiskMark 1000MB 5回

あれ…。300MB/sでは……。
(SATAIIは理論値で3Gb/s = 375MB/sの能力があるから、
 実効値で8割の300MB/sが出てちょうどいいくらいのはず…)

■あれ?なんか遅くね?
気になって調べることにした。
価格.comのクチコミをみたりすると、遅くなる原因はいくつか考えられる。
結果的には解決した。
どうやら、速度を測った時に、チップセットRAIDアレイが再構築中だった模様。

・書き込みキャッシュが無効になっている
 →有効を確認

・OSが古い
 →XPだとTrimが使えず遅くなる。Windows7なので問題ない。

・SATAの規格が古い
・PCI-Eの規格が古い
 →これらはSpecに書いた通りで問題ない。

・SATAのモードがAHCIになっていない
 →現在はRAID/AHCIモード。IntelRapidStorageManagerも入れている。
 →AHCIは機能するので、Trimも使えるはず。

・パーティションアライメントがズレている
どうやらSSDにも「アライメント」の問題が付きまとうらしい。
ただし、Windows7で初期化した場合は問題ないそうだ。
私の場合は、問題無いはず…
確認方法:
 ファイル名を指定して実行「msinfo32」
 コンポーネント>記憶域>ディスク を開く
 「パーティション開始オフセット」が「1,048,576バイト」である事を確認する。
 XPでフォーマットすると32,256バイトとなり、NGである。

・その他
 ケーブル品質が著しく悪い。
  →使っているのがSATA1の時代のものだからあり得る

 マザーボードのPCI-Eの食い合い
  →LANやUSBやSATAが食い合うと遅くなる。

▼RealSSD C300 64GB 現在のプライマリディスク
20110116realssdc300_64.png

▼Intel Rapid Strage RAID1 2TBx2 今までのプライマリディスク
20110116raid1_2000x2_2000.png

▼Intel Rapid Strage RAID0 500GBx3 更に前のプライマリディスク
20110116raid0_500x3_120.png

■番外編
実際にはWin7インストールを3回程行っている。
勝手に作られた「システムで予約済み」パーティションを消したり、
ProgramDataやProfileFolderをDドライブに移動させてみたり、
SSDをつなぎ直してブートストラップの再構築してみたり。
アホやな

システムディスクからHDDを弄る時に便利なコマンドをメモしておく。
○DOSコマンドでディスクを操作する
diskpart /?
フォーマット、パーティションの追加/削除/アクティブ化
ドライブレターを付与/削除、仮想ボリューム、その他色々。
ProgramDataやUsersフォルダをsetup時から移動させたい時は、
ボリュームに正しいドライブレターを付けた状態でsetupを起動した方が
精神衛生上よろしい。

○最初に読み込まれるディスクのブート領域とMBRを再構築
まずBIOSで最初に読み込まれるSATAポートを正しく指定すること。
bootrec /fixboot
bootrec /fixmbr

○SETUP.EXEと/unattend
自動インストールの設定ファイルを使う事で、
インストール時からUsersフォルダを別ボリュームに置ける。
設定ファイルの作り方は「Windows AIK」で調べると分かる。
インストールディスクで起動後、修復モードのDOS窓から
setup /unattend:D:\unattend.xml
でsetupを起動すると、unattend.xmlの設定を読み込んで起動する。