SSDドライブとVisual Studio IDE。大きな改善?実際の使用例、理論なし


91

Visual Studio 2008の開発サイクルをスピードアップするために、Windows 7 + Intel SSDドライブを使用したいと考えています。

スピードアップしたい分野は次のとおりです。

  • コンパイル/ビルド時間
  • winforms / webformsのファイルを開く
  • WindowsおよびWeb用の一般的なVisual Studio "sluggishnes"

Visual Studioの起動時間には興味がありません。また、GBあたりのコストは問題ではありません。スピードが欲しい。

誰かがこれをすでに試しましたか(SSDドライブ+ Visual Studio)、スピードアップ/ダウンについて何がわかりますか?

SSDについての理論は知っていますが、通常、プリンの証拠は食べることです。SSDを使用したVisual Studioセットアップを実際に試してテストした人に興味があります...


おそらくserverfault.comでこれを尋ねる価値があります。詳細については、blog.stackoverflow.com / 2009/04 / server-fault-private-beta-beginsをご覧ください。
マシューマードック

2
これはプログラミングに関するものだと思っていましたが、確かに考えていました。しかし、私はベンチマークを望んでいませんでしたが、実際のVS2008エクスペリエンス
Julian de Wit

けっこうだ。私もそこで質問してみることを提案していました(ただし、それは炎上戦争を引き起こす可能性があります...!)。
マシューマードック

うわー、Server Faultより古い質問をベータ版から見つけるのは面白いと思います。私は2016年のいくつかの利点を探していました(VSは80のギグだけで、将来の128GB SSDはWindowsとVSの両方に適合しない可能性があります...)
Paul Stelian

回答:


79

Visual C#2008 ハードデータがあります。短いバージョンでは、高速のI / Oより高速のCPUにお金を使うのが最善です。より長い答えが続きます...

私たちのC#(.NET 3.5)ソリューションには、200万行を超えるコード(コメントと空白行を含む)を含む81のプロジェクトが含まれています。数年前に、標準のHDDを備えたPentium 4 3 GHz PCから、10,000 RPM WD Raptor HDD(74 GB)を備えたCore 2 Duo 2.6 GHz PCにアップグレードしました。スピードアップは計り知れませんでした。3.5分まで約10分。これらすべては、4 GBのRAMを搭載したWindows XP Pro 32ビット環境にあります。

また、1ギガバイトのi-RAM(詳細はグーグルでご覧ください)も入手しました。これは、基本的にはバッテリーバックアップ付きのRAMハードディスクです。読み取り速度は速いが書き込み速度は遅いSSDとは異なり、i-RAMはどちらの速度も高速ですが、電源が失われた場合、バッテリーは約12時間しか持続しないため、チェックインに注意する必要があります。これにより、10,000 RPM Raptor HDDと比較して、Core 2 Douプラットフォームでのコンパイル時間がさらに1分短縮されました(最短2.5分)。

私はそれ以来、これらの古い74 GB 10,000 RPMラプタードライブは、ガーデンのさまざまな7,200 RPMモダンドライブよりも少し遅いことを発見し、ベンチマークのコンパイルが一貫して行われることを証明しました。新しいヴェロキラプトルを試したことはありませんが、確かに高速ですが、コンパイル時間だけでは十分とは言えません。

先週、G.Skill Falcon 128 GB SSD(Indilix Barefootコントローラー搭載)と2番目のドライブとして標準の500 GB HDDを備えた新しいIntel Core i7-870プラットフォームを入手しました。また、i-RAMをこのPCに取り付けて、すべての構成をテストしました。

HDDで3.5分、i-RAMで2.5分でコンパイルされたCore 2 Duoと比較して、i7-870はSSD、HDD、i-RAMで1分40秒でコンパイルでき、3秒かかります。

したがって、どちらの場合も開発者のワークステーションをアップグレードしましたが、C#コンパイル時間のパフォーマンス向上の大部分は、ディスクよりもCPUの高速化によるものです。コンパイル時間を短縮したい場合は、ディスクではなくCPUにお金を投入してください。

そうは言っても、SSDはVisual Studioを読み込んでソリューションを開く方がはるかに高速です(ただし、そのためのタイミングはありません)。SSDを購入できる余裕があれば、PC上のすべてのプログラムが非常に高速に読み込まれるため、元に戻すことはできません。しかし、それはあなたのコンパイルを大幅にスピードアップしません。これは、Visual Studio C#がシングルスレッド化されているためです。マイクロソフトが共同で行動し、IDEでコンパイラをマルチスレッド化した場合、実際にはこれらの4つのコアを使用できます...


2012年5月の更新: PCを再びアップグレードし、CPUパフォーマンスに焦点を合わせる前に学んだ内容に基づいています。新しいPCには、Intel Core i7-2600k CPUが4.6 GHzにオーバークロックされており、Intel 510シリーズは120 GB SATA III SSD、16 GB RAM、大容量のCPUクーラーを備えています。驚いたことに、これによりコンパイル時間がほぼ半分になり、私は確かにこれを、より高速なSSDではなくCPU馬力の非常に大きな増加に帰着させました。

Visual Studio 2010でのC#コンパイルのパフォーマンス結果は次のとおりです。

  • 159秒:Intel Core i7-870ストック(2.9-3.3 GHz)、SATA II SSDを搭載した4 GB RAM
  • 109秒:Intel Core i7-2600kストック(3.4-3.8 GHz)16 GB RAM、SATA III SSD
  • 84秒:Intel Core i7-2600kオーバークロック(4.63 GHz)16 GB RAM、SATA III SSD

1
ありがとう..残念ながら、SDDモンスターコンピュータを注文しました:)私も結果をここに投稿しますが、同じ結果になると思います。
ジュリアン

ところでASP.NETやWinformsをしましたか?
Julian de Wit

9
OK-正解です。まず、使用しているSSDについては言及しませんでした。SSDドライブはSATA2インターフェイスに直接接続します。そのiRAMはSATA1(130MB / s)です。これに加えて、iRAMには限られたコントローラしかありません。RAID 0に2つある場合、最大200MB / sの速度が得られるはずです。SSDを使用してもコンパイル時間は改善されないことに同意しますが、SSDが約1秒でオープンビジュアルスタジオを開くのを見てきました。最後に、iRAMは一般的なSSDドライブとしての資格があるとは思いません。あなたの結果は誤解を招くものであり、事実は間違っています。
JL。

13
入力する前に、読んで考えてください。最初に、私が使用していたSSDについて触れましたが、実際はBOLDです。iRAMはSATA1インターフェイスを備えているため、ほとんどすべての新しいSSDよりも読み取りが遅いことを知っています。テストする必要があり、実際には書き込みと読み取りの速度が同じであるため、ほとんどのSSDではそうではないため、これを含めました。RAIDは2つでテストしませんでした。1つしかなかったからです。SSDはVSをロードする方がはるかに速いことも前の段落で述べました。それで、事実はすべて正しく、あなたが同意する結果ですが、それでも彼らは誤解を招くと言いますか?興味深い...
ベンロビンス

1
@BenRobbins / MPフラグを使用して、VisualStudioの外部でC#プロジェクトをベンチマークしましたか?
John Zabroski、2013年

27

購入したばかりで、SSDを購入したことがないのが残念です。

以前はコンパイル時間は問題ありませんでしたが、IDE全体の応答性が大幅に向上しました。そして、それはVisual Studioだけでなく、他のアプリケーションでもあります。システム全体がこれをすばやく機能させると、フローを維持しやすくなります。


4
数ヶ月後..私は同じ気持ちを持っています..全体のコンピューター体験はより良いです。
ジュリアン

11

テストとして、90 GBのSandforceベースのSSDを注文して、ビルド時間に役立つかどうかを確認しました。完全な再構築に21分かかる大きなC ++プロジェクトがあります(古いXeon 3.4 GHzボックス)。

それぞれに3つのテストを実行したところ、ビルドの時間差はごくわずかでした。30秒程度速くなります。

新しい(!)Xeon 5150ボックス(ハードディスク付き)は、同じプロジェクトを約11分で再構築します。これは、コンパイルが実際にCPUにバインドされていることを示しています。

(私は、SSDの4kおよび512kの素晴らしい読み取り/書き込みパフォーマンスがビルドで非常に有益であると考えていたので、私は驚きました。)


11

長いパフォーマンステストの後、私はここで最高のセットアップを得ましたが、C ++コンパイラ用です。必要になるだろう:

  • Windows用SSDおよびプログラムファイル(通常はC:ドライブ)
  • 2 TBの1 TB WD Caviar Black:
    • ドライブD:TEMPフォルダーのみを持つ小さなシリンダー(最大35 GB)。TMPおよびTEMP環境変数をD:\ TEMPにマップする必要があります(これは本当に重要です!!!)
    • ドライブE:残りのドライブストレージ。ソフトウェア開発を除いて、これを一般的なデータストレージに使用します。
  • Visual Studio 2008プロジェクト/ソリューションを保存するパーティションレイアウトに1 TB WDキャビアブラック。Subversionの使用に基づいて、私は4つのパーティションになりました。
    • トランクおよび汎用プロジェクトの場合は820 GB
    • 「機能ブランチ」の場合は60 GB
    • 製品の安定化中に使用される「安定したブランチ」用に60 GB
    • 承認済みソフトウェアのマイナーな修正に使用される「製品品質ブランチ」用に60 GB
  • / MPコンパイラスイッチを使用する6コアまたは8コアプロセッサ(Visual Studio 2008のネイティブな「並列プロジェクトビルド」機能と混同しないでください-AMD Phenon IIプロセッサがうまく機能している理由がわかりませんこの組み合わせ)
  • Windows 7 64ビット(32ビットコンパイラを使用していても、64ビットOSでより高速に実行される理由が正確にわかりません)
  • SATA 3互換メインボード

この設定は、私がテストした他のどの組み合わせよりも優れています。

巨大なモジュラープロジェクトの典型的なコンパイルは、次の結果になります。

  • / MPおよび通常のHDDを使用しない並行ビルド:約12:00分
  • この提案されたセットアップ:4:30分
  • このセットアップ、ただしWD Caviar Greenドライブに交互に使用:ドライブあたり+1:00(両方の場合5:30または6:30)
  • TEMPパーティションをRAMDRIVEに移動:5:30

私の結論は次のとおりです:

  • TEMPフォルダーをSSDで実行しないでください。それらは悪い「ライター」であり、WD Caviar Black内に同等の64 MBキャッシュがないためです。
  • TEMPとして機能する専用ドライブを使用すると、両方のWDドライブが並行して機能します。cl.exe一時ファイルのTEMPと* .cpp / h、*。obj、*。lib、*。exeなどを保存するプロジェクトドライブ。
  • WD Caviar Blackキャッシングアルゴリズムは印象的で、SATA 6 GB / sと組み合わせると、TEMPドライブでテストしたRAMDRIVEセットアップよりも優れています。
  • パーティショニングは、コンパイラー環境では避けられない断片化への影響を減らします。同じことがTEMPドライブにも有効です

お役に立てれば幸いです。


1
言うのを忘れて、そのSATAモードはAHCIモードでなければなりません。
Mathias A. Gruber

1
ただし、TEMPフォルダーの部分についてはわかりません。SSDが「悪いライター」であると言うのはなぜですか?オンボードキャッシュサイズに関しては、通常64MBよりも大きいです(Vertex 4には512MBのDRAMキャッシュが付属しており、より大きなドライブでは最大1GBです)。そして、あなたの悪いRAMDRIVE体験は本当に奇妙です。どれくらいの大きさでしたか?スワップファイルはどこにありますか?ディスクにスワップされなかったと思いますか?平均的なDDR2 RAMは、SATA 6GBの10倍の帯域幅を持っています。言うまでもなく、Windows自体がディスク書き込み用のRAMキャッシュを行います。そして、それはあなたが話しているRAIDでもありません。
Groo

5

オリジナルの5400 RPMハードドライブをクローンすることでラップトップをSSDにアップグレードしました(驚くほど簡単なプロセスです)。ストップウォッチを使用して、メトリックの前後をキャプチャしました。(Dell Inspiron 1525、3 GBのRAM、Windows Vista 32ビット)

Windowsの起動/起動

63秒-> 52秒

ASP.NET Visual Studioソリューションの読み込み

つまり、.slnファイルをクリックしてからVisual Studioが完全に読み込まれてコーディングを開始できるようになるまでの時間です。初回は常に後続の時間よりも時間がかかるため、測定を行う前にこれを1回実行しました。

16秒-> 8秒。

デバッグ

F5 完全にロードされたホームページに。

5秒-> 3.5秒


1
5400rpmからSSDに移行することで、起動時間を21%削減できましたか?これにより、はるかに大きなメリットが得られるはずです。ラップトップに十分なRAMがないかもしれません。
ブライアンケンディグ

@Bria Kendigありがとう、私はそれを試すかもしれません。私は現在3GBを持っているので、私が行くことができる最大のものは4GBです。
James Lawruk、2012年

重要なSSDがあり、完全にシャットダウンしてから15秒でWin7が起動します。
tunafish24 2012

Dell InspironノートブックでHDDをSSDにどのように変更しましたか?
Karthik Nishanth、2015

Amazonからクローンソフトと小型ドライバーを購入しました。lawruk.com/blog/40/cloned-laptop-hard-drive-to-an-crucial-ssd
James Lawruk


4

新しいコンピュータを購入したとき、何が私の体験を速くしたのかはわかりませんでした。

しかし、私の同僚はSSDの7200 RPMハードディスクドライブを変更しました。Visual Studio(特にASP.NETの開始/デバッグ)は、少なくとも2倍の速さでした。


2

私もこれを検討しており、しばらく前にラップトップに差し込んで忘れることができるクイックSDカードを購入しました。これにより、Windows VistaでReadyBoost機能を使用できます。それは違いを生むように感じますが、そのためだけにSSDドライブを購入することを保証するだけでは十分ではありません。

その後、Subversionの更新時に問題が発生し始め、ReadyBoostのアイデアを破棄して、すべてのプロジェクトファイルを作成したマウントポイントにSDドライブをマウントすることにしました。SDカードはそれほど大きくありませんが(1 GB)、ビルドの待機時間が確実に短縮され、デバッグがかなり速くなります。

これのほとんどは主観的であり、私は「私はこれを感じる」と「私はそれを感じる」という事実を必要とする質問に答えています。別のドライブからVisual Studioファイルを実行する実験を行っているため、確かにそれが違いを生み、どれだけ、そしてどれだけの金額を支払う意思があるかは間違いありません。私のノートブックは別のハードディスクドライブを使用でき、SDDと7200 RPMラップトップドライブのどちらを使用するかを決めることができませんでした。


1
こんにちは、ありがとう。私は7200から10.000ヴェロキラプトルを飛ばしてもほぼ同じ結果が得られました。私は.. SSDのは革命的だったことを望んでいた
ジュリアン・デ・ウィットは、

1
明確にするために、ヴェロキラプトルはSSDドライブではないと思います。
ブレット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.