it-swarm-ja.com

Windows開発者のマシンで16GBを超えるRAM)を持つことに利点はありますか?

Windows Server 2008およびHyper-Vを実行しているマシン(24 GB RAMを搭載したデュアルクアッドコアXeon(2.26 GHz))を想定しています。良好なパフォーマンスで同時に実行できるVMの数はいくつですか?

これはやり過ぎですか?本当にRAMが多すぎますか?

VMごとに2GBを想定しています。これは、VMの場合は約16 GBで、メインOSとHyper-Vの場合は残り8GBです。

それは正しいと思いますか?


編集:

私は質問が自慢のように聞こえないようにしようとしました。私の意図ではありませんでした。書くのは難しい質問です。

8
Robert Kozak

「Hyper-Vを使用して一度に約8つのVMを実行したい。」

一体なぜそんなことをしたいのですか?

開発中にすべての8を同時にロードできる可能性は低いため(おそらく、簡単な負荷テストを除く)、2Gbですべての8VMを実行し、それらすべてのコアを十分に活用できます。

7
S.Lott

テストや継続的インテグレーションなどに使用するVMwareを実行しているコモディティマシンがいくつかあります。

これらのマシンには、単一のクアッドコアプロセッサと16GBのRAM)があります。現在のセットアップでは、次のことがわかりました。

  • 私たちは最初にI/Oバウンド、次にCPUバウンドであり、メモリは問題ではありません。
  • ISCSIとOpenFilerを使用して、デュアルギガビットイーサネットを介して別の専用ファイルサーバーで仮想ハードドライブをホストすることで、ローカルディスクと比較してコストを削減し、パフォーマンスを向上させることができました。
  • 16 GBのメモリは各マシンで十分に活用されておらず、ほとんどのインスタンスは512MBから2GBのRAMにのみ割り当てられており、OSには5GBまたは6GBの空き容量があります。
  • 24GBのRAM)を備えたデュアルクアッドコアXeonマシン1台のコストで、それぞれ16GBのRAM =および単一のクアッドコアCPU(FBDIMMを回避すると多くの現金を節約できます)-特に冗長性はテスト/開発マシンではそのような問題ではないためです。
  • 複雑なアプリケーション/環境をテストする場合、さまざまなサービス間で現実的なレベルのネットワーク遅延を実現するために、さまざまな仮想マシンをさまざまな物理環境に配置すると役立つことがよくあります。

開発にリグを使用することに関しては、私にとって重要な懸念事項はI/Oです。これだけ多くの仮想マシンを実行している場合、開発中のディスクアクセス時間に悪影響があり、コンパイルが遅くなるなどです。できるだけ多くの仮想マシンを別のボックスにシフトし、開発者のマシンに負担をかけないようにする傾向があるため、コンパイルやその他の開発者関連のタスクが高速になります。

昨年からの私の初期設定に関するブログ投稿。

4
Bittercoder

使用しているWindowsのバージョンによって異なります。ここにいくつかの情報があります: http://msdn.Microsoft.com/en-us/library/aa366778.aspx

64ビットのWindowsVista Business以降、および64ビットのWindows 2008 ServerStandard以降はRAMをアドレス指定できる必要があります。

3
Justicle

64ビットWindowsでは、その量のメモリに対処することは問題にはなりません。あなたの最大の関心事はI/Oであり、その数のVMが同時に実行されていると思います。その多くのVMを効果的にサポートするために、利用可能な最速のRPMでSASドライブに投資することをお勧めします。

3
Steve Wranovsky

同様の質問があり、理論的に議論するのではなく、必要に応じて交換/アップグレードすることを考えて購入することにしました。私は、12 GB RAM、2つのIntel 80 GB SSD(RAID 0)、2つの1 TB SATA HDD(RAID 1)、および使い捨て1 TB SATA。

私はWindowsServer 2008 x64を使用して、SSDでいくつかのVMをホストしました。非常に、非常に速い応答。 (私はVMの使用経験があり、特にSQL Serverを同じスピンドルに追加する場合、ディスクI/OによってVMで開発者環境をホストするのが面倒になることを知っています。

私は本当にこのセットアップを楽しんだが、その後VM遊び場が到着した(32GBのRAMと気の利いた小さなSANを備えたDell1950))それらを投げたVMは他のいくつかと一緒に接続され、SSDにWindows 7をロードしました(新しいワークステーションとは独立していくつかのVMをホストしているので、システムをいじることができると感じました)。

私が気付いた最大のことは、VM以外のマシンで開発することがどれほど優れているかということでした。速度ではなく、視覚効果、フォントのアンチエイリアスなどです。SSDは、実際にはI/Oを非要因にしましたが、すべてが瞬時に感じられます。 (また、Windows 7は素晴らしいです。)

RTMが出たときに再構築する必要があることはわかっていますが、再構築中に作業できるVMがあります。Hyperの代わりにVPCを使用する必要があります。 -Vは、他の人が混乱していないことを確認する必要があるVMを構築するためのものですが、これは合理的なトレードオフだと思います。

要するに、別のサーバー上のホストVMに言う他の人たちと同じですが、IntelのSSDは非常に高速であることを付け加えたいと思います。個別のマシンにより、柔軟性が向上します。ドライブはテストには十分な速さで聞こえますが、開発作業ではインスタントビートが速くなります。

3
Theune

各VM "owns"であるため、Hyper-Vでは独自のメモリを所有します。アクティブにホストできるVMの数は、使用可能なRAMによって制限されます。したがって、実際には多くはありません。

もちろん、開発マシンの最大速度のボトルネックはハードドライブです。追加のRAMを使用すると、RAMドライブをセットアップでき、パフォーマンスが大幅に向上する可能性があります。

1
Paul Alexander

そのRAMに対処するのに問題はありません。20GBで済ませることができるかもしれませんが、この時点でさらに4GBを取得することもできます。なぜ開発者のマシンでこれを行うのですか?あなたが一人のショーでない限り、このようなものを処理する中央サーバーがあるはずです。

1
Jared

シナリオがサーバー+クライアントに関するものである場合、シミュレーションにはマルチマシンセットアップの方が適していて、安価です。 VMは実際にはネイティブOSと同じではなく、スレッド化とプロファイリングが壊れているため、ターゲットから完全に外れ、さらに悪いことに、それに応じてプロファイリングすることができなくなります。

私の2セント

1
Robert Gould

ロバート、

8つのVM(開発用など)を同時に実行する場合は、VMWareが提供するサーバー仮想化オプションを検討することを強くお勧めします。一般に、サーバー仮想化テクノロジーは、ワークステーションのテクノロジーよりもはるかに最適化されており、物理リソースを効率的に利用できます。

私はVMWareインフラストラクチャ3(VMWareのサーバー仮想化製品/テクノロジーファミリーの包括的な命名法)を使用する機会があり、感銘を受けたと言わざるを得ません。サーバーエディションは、ワークステーションバージョンと比較して非常に効率的であり、信じられないほどの柔軟性を提供します。

私はHyper-Vの使用経験はありませんが、Hyper-Vを使用したことのある多くの人がHyper-Vを高く評価しています。ただし、VMWareは、Hyper-Vでは実行できない同じ物理ホスト上で異なるオペレーティングシステムを実行するVMを作成できるという単純な事実の優れた代替手段であると考えています(AFAIK)

RAMに関する限り、VMWareインフラストラクチャ3の制限は24Gbをはるかに超えており、利用可能なメモリ、さらには各コアをプロビジョニングできますが、ゲスト間で希望する限り、ゲストがそれをサポートするように。

VMWareインフラストラクチャ3について学習することに興味がある場合は、VMWAre ESXサーバーのアーキテクチャと他ではほとんど見られない技術的な考慮事項についての説明が含まれているため、 この本 を強くお勧めします。

これがあなたの質問への直接の答えではなく、私のコメントを許してくれることを願っています(開発マシンの24Gbは少し変わっているようです..少なくともしばらくの間)

1
Miky Dinescu

Hyper Vを実行しており、同じマシン上でServer2003とXP)の両方のインスタンスをホストしています。

---これは、Hyper Vの同じマシンで異なるOSをホストすることはできないとユーザーが言った返信であるはずでした。または、とにかく、それを読んだ方法です。

0
Mike G