HDD/SSD

SSDの性能には「足回り」も重要。PCIe2.0接続から3.0へ

はじめに

Kenu氏と相談しながら組み上げて使い勝手の確認をしているPC、現行世代のインテルのCPUを使っていますがチップセットはエントリーとなるH310です。

このチップセット、上位機種との差別化を行なうためかPCI-Expressインタフェースのバージョンが2.0対応に抑えられています。PCI-Expressインタフェースは非常に高速な通信速度を出せる規格になっているため、通常であれば古いバージョンの2.0でも速度不足が問題になるケースはほとんどありません。

ですが、PCI-Expressのインタフェースの能力を目一杯まで使うNVMeタイプのSSDや、高性能なビデオカードではここが性能のネックになるケースがあります。

今のところ試しているマシンには独立GPUを載せていませんので、性能面で頭を抑えられているのはSSDだけです。

この部分、PCI-Expressのバージョンによってどんな影響があるのか、著者がメインで使っているマシンの拡張スロットのインタフェースをたまたま2.0から3.0にアップグレードする機会がありましたので、こちらから検証を行なってみましょう。

きっかけは些細なことから

著者のメインマシンも数年前にシステムドライブをSATA3接続のSSDからPCIe接続のSSDに交換していました。その際もちろんベンチマークを取っていたのですが、最大転送速度が1,600MB/sec程度とカタログスペックに及ばない数値になっていました。

実測値はこんな感じです。

ちなみに使っているSSDはプレクスターのM8SeYの256GB。今メインとなっているNVMeタイプのSSDよりも世代の古いコントローラを使っているため、最大転送速度は1ランク低くなっています。

カタログスペックはこんな感じです。

シーケンシャルリード 2,450MB/sec
シーケンシャルライト 1,000MB/sec
ランダムリード 205,000IOPS
ランダムライト 160,000IOPS

そしてそのまま何も疑問を持たずに使い続けていたのですが、あれこれ試してみているエントリー機のスペック等々を見ているときにふと気づいたのです。

「あれ?そいやうちのマシンで使っているCPUってPCIeのサポート、バージョンいくつまでだっけ?」

と。

著者が使ってるいるマシンは結構古いものですが、特に使い勝手・性能に問題がなくトラブルも起こっていないためずーっと使い続けています。CPUはSandy Bridge-EのCore i7-3930Kでした。2011年デビューのCPUですから今では結構な年代物かもしれませんね。

インテルがCPU開発で取ってきた「チクタク戦略」がまだまともに機能していた時代のCPUですので、Core i7-3930KからCore i7-4930Kの世代の交代では製造プロセスのシュリンク(32nm->22nm)がメインで基本CPUのアーキテクチャにはほとんど変更がありませんでした。

が、わずかに行なわれた機能追加でCore i7-4930KではPCI-Expressの対応バージョンが3.0に引き上げられています。つまりこれまで使ってきたCore i7-3930KはPCIe2.0までの対応で、PCIe3.0接続対応のSSDなどの性能をフルに引き出せていなかったのです。

そういった関係もあって今回メインマシンのCPUをCore i7-4930Kに換装してみることにしました。こちらならきちんとPCIe3.0対応です。SSDも本来の性能を出せるはず!

ちなみに、Coreプロセッサシリーズは一番最初のモデルCore i7の900番台以外はすべて、メモリコントローラの他にPCI-ExpressインタフェースのコントローラもCPU側に統合されています。

これは性能向上の狙いもあると思いますが、それ以上にPCI-Express 10本分とか20本分の転送速度をカバーできるような、超が2つも3つもつきそうな高速インタフェースを準備できなかったのが大きな理由ではないかと思います。

チップセット(ノースブリッジ)からPCI-Expressの信号を引き出すなら、CPUとチップセット間をさらに高速なインタフェースで繋がないとせっかくのPCI-Expressの帯域が活きませんから。

換装は簡単。でもソケットのピンには注意!

今のデスクトップパソコン用のCPUの取り替えはとても楽です。基本、ヒートシンクを外してロック用のカバーを開けてCPUを載せ替えるだけ。

CPU自体は間違えた向きには絶対に設置できないよう工夫がされていますので、こちらで間違うことはありません。

ただ、ソケットの受け側、マザーボード側の接触用のピンがものすごくデリケートで脆弱です。指を滑らせてCPUをピンの上に落とすだけでピンが折れる可能性もあります。ここだけは十分以上に注意を払いましょう。

CPUを載せられたらあとは熱インタフェースのシリコングリスを適量塗ってヒートシンクを取り付けるだけです。

早速SSDのベンチマークを実行

最初少しだけシリコングリスが馴染むまで慣らし運転を行ないます。

とは言っても難しいことはなく、少しCPUに負荷をかけて温度を上げしばらく動かすだけです。それでシリコングリスがより柔らかくなってCPU側のヒートスプレッダとヒートシンクの接触面に馴染むはずです。

慣らしの後は早速SSDの性能を測るベンチマークを実行。ここはやっぱり定番中の定番、CrystalDiskMarkですね。今回もストアアプリ版、UWP版アプリの方を使います。

CPUを換装してから性能測定を行ない直してみると以下のような成績で、しっかりとスペックシート上の性能に届くようになりました。

ランダムリードは220,000IOPSぐらい出ており、軽くカタログスペックを凌駕するような性能になっていますね。

大きなファイルのシーケンシャルアクセスでは最新SSDに及びませんがランダムI/Oの性能が今でも一線級の性能を発揮していますから、このSSDでもOSやアプリの使用感は十分です。

プレクスターのユーティリティを使ってSSDの接続状態を確認してみると、以下の通りしっかりとPCIe3.0接続となっていることが分ります。

コンピュータの性能には足回りの性能も重要

今、多くのコンピュータではPCI-Expressインタフェースがその基盤になっています。完全な汎用インタフェースと言えるもので、パソコンではインタフェースは何もかもPCIeに集約しそうな方向で動いています。

ですのでこれからはますますPCI-Express自体の性能、サポートするバージョンが重要になってきます。バージョン4.0まではPCI-Expressの性能は倍々ゲームで性能が上がっていますので、出来るだけ高いバージョンをサポートするシステムほど色々な面で今後の性能のアップが期待できます。

今回試してみたPCI-Express接続のSSDはその典型ですね。PCIe2.0接続から3.0接続に切り替えるだけでシーケンシャルリードの速度が1,600MB/secから2,400MB/sec超へと1.5倍になりました。

PCI-Expressインタフェースの性能は、他にもビデオカードを載せるときにも性能の下支えをすることになる重要な要素になります。

他のもっと派手な要素に目が行きがちですが、すべての面で上を目指すならPCI-Expressなどのパソコンの「基礎体力」と言えるところにもしっかり気を遣っておくのがいいですね。

今回のトライでその点を再確認しました。