Windows 개발자 컴퓨터에서 16GB 이상의 RAM을 사용하면 어떤 이점이 있습니까?


8

Windows Server 2008 및 Hyper-V를 실행하는 컴퓨터 (24GB RAM이 장착 된 듀얼 쿼드 코어 제온 (2.26GHz))를 가정합니다. 좋은 성능으로 동시에 몇 개의 VM을 실행할 수 있습니까?

이것은 과잉입니까? 당신은 정말로 너무 많은 RAM을 가질 수 있습니까?

VM 당 2GB를 가정합니다. VM의 경우 약 16GB이며 기본 OS 및 Hyper-V에는 8GB가 남아 있습니다.

맞습니까?


편집하다:

나는 그 소리를 덜 자랑스럽게 들리려고 노력했다. 내 의도가 아니었다. 쓰기 어려운 질문입니다.


1
그냥 호기심 .. 어떤 "dev"를하고 있습니까? 그리고 이것이 실제로 프로그래밍과 어떻게 관련이 있습니까?!
— Miky Dinescu 2016

두 들아! 워크 스테이션에 8 개의 VM이있는 16GB RAM?
— Byron Whitlock

이것은 내 겁쟁이 랩톱 512MB에서 기분이 나빠집니다.
— Zifre

4
dev 질문보다 자아 여행처럼 들립니다 ... 어쨌든 나는 질투합니다 :)
— Robert Gould

1
나는 그것이 그렇게 들린다는 것을 알고 있지만 정말로 궁금합니다. 이것은 자아 여행이 아닙니다. 그렇다면 전체 사양을 제시 할 것입니다. 나는이 질문에 대해 진지하다. 내 첫 번째 64 비트 시스템과 내가 가진 가장 많은 램은 4GB 였으므로 16GB 이상이 과잉인지 알고 싶습니다. 나는 640k에 대해 말한 것을 기억합니다. :)

답변:


7

"Hyper-V를 사용하여 한 번에 약 8 개의 VM을 실행하고 싶습니다."

왜 지구상에서 그런 일을하고 싶습니까?

개발 중에 모든 8을 동시에로드 할 수는 없기 때문에 (약간의로드 테스트 제외) 아마도 2Gb에서 모든 8VM을 실행하고 여전히 모든 코어를 잘 활용할 수 있습니다.


SQL Server, 웹 서버 및 클라이언트 시스템이있는 다 계층 테스트 시나리오

3
8VM은 간단한 SQL Server, 웹 서버 테스트를하기에는 너무 복잡합니다.
— S.Lott

8은 한 번에 3 또는 4 개만 사용하는 경우 VMWare의 API에 대해 작동하도록 코드를 작성하는 것이 좋습니다. 따라서 수행하려는 테스트에 따라 시스템 그룹을 시작 / 중지 할 수 있습니다.
— Bittercoder

이 경우에 적절한 지 여부는 중요하지 않습니다. Windows 상자에서 16GB 이상의 RAM을 사용하는 데는 일반적인 일반적인 개발 질문과 같은 많은 이유가 있습니다.
— Justicle

왜 8이 너무 많은지 모르겠습니다. 클러스터를 테스트하려면 분산 시스템을 테스트하고 멀티 티어 시스템을 테스트하십시오. 왜 그렇지 않습니까?
— nos

4

테스트, 지속적인 통합 등에 사용하는 VMware를 실행하는 몇 가지 상용 머신이 있습니다.

이 머신에는 단일 쿼드 코어 프로세서와 각각 16GB의 RAM이 있습니다. 현재 설정에서 다음을 관찰했습니다.

  • 우리는 먼저 I / O 바운드, CPU 바운드 두 번째이며 메모리는 문제가 아닙니다.
  • iSCSI 및 OpenFiler를 사용하여 듀얼 기가비트 이더넷을 통해 별도의 전용 파일 서버에서 가상 하드 드라이브를 호스팅하면 로컬 디스크에 비해 비용이 절감되고 성능이 향상되었습니다.
  • 16GB의 메모리는 각 컴퓨터에서 사용률이 낮으며 대부분의 인스턴스는 512MB와 2GB의 RAM 사이에만 할당되며 OS에는 5GB 또는 6GB의 여유 공간이 있습니다.
  • RAM이 24GB 인 듀얼 쿼드 코어 Xeon 머신 한 대의 비용으로 각각 16GB RAM과 단일 쿼드 코어 CPU를 갖춘 2 개 이상의 4 개 이상의 상용 머신을 구입할 수 있습니다 (FBDIMM을 피하면 많은 현금을 절약 할 수 있음) -특히 이중화는 테스트 / 개발 시스템에서 그러한 문제가 아닙니다.
  • 복잡한 응용 프로그램 / 환경을 테스트 할 때 여러 가상 시스템이 서로 다른 물리적 환경에 있도록하는 데 도움이되므로 다양한 서비스간에 현실적인 수준의 네트워크 대기 시간을 얻을 수 있습니다.

개발을 위해 리그를 사용하는 경우-I / O의 주요 관심사-많은 가상 머신을 실행하는 경우 개발하는 동안 디스크 액세스 시간에 부정적인 영향을 미치므로 컴파일 속도가 느려집니다. 가능한 많은 가상 머신을 별도의 상자로 옮기고 개발자 머신에 부담을주지 않도록 컴파일 및 기타 개발자 관련 작업이 빠르게 진행됩니다.

작년의 초기 설정에 대한 블로그 게시물.


3

사용중인 Windows 버전에 따라 다릅니다. 여기 몇 가지 정보가 있습니다 : http://msdn.microsoft.com/en-us/library/aa366778.aspx

64 비트 Windows Vista Business 이상 및 64 비트 Windows 2008 Server Standard 이상은 RAM을 처리 할 수 ​​있어야합니다.


나는 윈도우 서버 2008 (64) 사용에 계획하고 있었다

3

64 비트 Windows에서는 많은 메모리를 처리하는 것이 문제가되지 않습니다. 많은 VM이 한 번에 실행되는 가장 큰 관심사는 I / O라고 생각합니다. 많은 VM을 효과적으로 지원할 수있는 가장 빠른 RPM으로 SAS 드라이브에 투자하는 것이 좋습니다.


동의했다. 필요에 따라 많은 15k SCSI 드라이브 또는 플래시 드라이브를 찾으십시오.
— Joey Robert

3

나는 비슷한 질문을했고 이론적 인 용어로 토론하기보다는 필요한 경우 교체하거나 업그레이드 할 것이라는 아이디어로 구매하기로 결정했습니다. 12GB RAM, 2 개의 Intel 80GB SSD (RAID 0), 2 개의 1TB SATA HDD (RAID 1), 1TB SATA를 버리는 Core i7 920을 사용했습니다.

Windows Server 2008 x64를 사용하고 SSD에서 몇 개의 VM을 호스팅했습니다. 매우 빠른 응답. (VM에 대한 경험이 있으며 특히 동일한 스핀들에 SQL Server를 추가 할 때 디스크 I / O가 VM에서 개발자 환경을 호스팅해야한다는 것을 알고 있습니다.

나는 정말로이 설정을 즐겼지만 VM 놀이터 (32GB RAM과 멋진 작은 SAN을 갖춘 Dell 1950)가 도착했다. 그 VM을 다른 VM과 함께 VM에 던져 넣고 SSD에 Windows 7을로드했습니다. (현재 새 워크 스테이션과 독립적으로 일부 VM을 호스팅하고 있기 때문에 시스템을 가지고 놀 수 있다고 생각했습니다.)

내가 발견 한 가장 큰 것은 VM이 아닌 머신에서 개발하는 것이 얼마나 좋은지였습니다. 속도가 아니라 시각적 효과, 글꼴의 앤티 앨리어싱 등 SSD는 실제로 I / O를 중요하지 않은 요소로 만들었지 만 모든 것이 즉각적으로 느껴집니다. (또한 Windows 7은 달콤합니다.)

RTM이 나왔을 때 다시 빌드해야한다는 것을 알고 있지만 다시 빌드하는 동안 작업 할 수있는 VM이 ​​있습니다. 다른 사람이 엉망이되지 않도록 VM을 구축하려면 Hyper-V 대신 VPC를 사용해야하지만, 이것이 합리적이라고 생각합니다.

요컨대, 별도의 서버에서 VM을 호스팅한다고 말하는 다른 사람들을 에코하고 싶지만 인텔의 SSD가 매우 빠르다는 것을 추가하고 싶습니다. 별도의 기계로 유연성이 향상됩니다. 드라이브는 테스트하기에 충분히 빠르지 만 개발 작업에는 즉각적인 속도를냅니다.


1

각 VM은 Hyper-V에서 자체 메모리를 "소유"하므로 적극적으로 호스트 할 수있는 VM의 수는 사용 가능한 RAM에 의해 제한됩니다. 너무 많이 가질 수 없습니다.

물론 개발 머신에서 가장 큰 속도의 병목은 하드 드라이브입니다. 여분의 램을 사용하면 성능을 크게 향상시킬 수있는 RAM 드라이브를 설정할 수 있습니다.


의심 할 여지없이, 질문이 메모리에만 집중되기를 원했기 때문에 드라이브에 대해서는 언급하지 않았습니다. DDR3 메모리는 저렴하지 않으며 24GB가 필요하지 않고 16GB가 좋으면 사양을 드롭 다운합니다. 이 기계에는 4 개의 15k SAS 드라이브가 있으므로 이것들은 충분히 빠르다고 생각합니다.

1

해당 RAM을 처리하는 데 아무런 문제가 없으므로 20GB를 벗어날 수 있지만이 시점에서 추가 4GB를 얻을 수도 있습니다. 왜 개발자 컴퓨터에서이 작업을 수행하고 있습니까? 한 사람의 공연이 아니라면 이와 같은 것을 처리하는 중앙 서버가 있어야합니다.


테스트입니다. 품질 관리팀이 멀티 티어 테스트를 수행 할 수 있도록이 구성을 평가하겠습니다. 평가 기간이 끝나면 비슷한 사양의 랙 마운트가 제공 될 것입니다. 또한 내가 보통하지 않는 VM을 사용 해보고 놀아주는 변명입니다.

1

시나리오가 서버 + 클라이언트에 관한 경우 다중 머신 설정이 시뮬레이션에 더 좋고 저렴합니다. VM은 실제로 기본 OS와 동일하지 않으므로 스레딩 및 프로파일 링이 손상되어 목표에서 벗어나게되므로 실제로 프로파일 링 할 수 없게됩니다.

내 2 센트


1
네트워크 대기 시간도 중요한 요소가 될 수 있습니다.하지만 VM에서 서버 테스트는 오늘날 귀중한 인프라가 기업 세계에서 가상화되어 비용을 줄이기 위해 종종 가치가 있다고 생각합니다 ...
— Bittercoder

좋은 지적은, 누군가의 하드웨어에서 서버를 운영한다면 요즘 어쨌든 가상화되는 것입니다.
— Robert Gould

1

로버트,

8 개의 VM (개발 용 또는 기타 용)을 동시에 실행하려는 경우 VMWare에서 제공하는 서버 가상화 옵션을 탐색하는 것이 좋습니다. 일반적으로 서버 가상화 기술은 워크 스테이션에 비해 물리적 리소스 활용에있어 훨씬 최적화되고 효율적입니다.

VMWare 인프라 스트럭처 3 (VMWare의 서버 가상화 제품군 / 기술의 우산 명명법)과 함께 작업 할 기회가 있었으며 감동을 받았습니다. 서버 에디션은 워크 스테이션 버전과 비교할 때 매우 효율적이며 놀라운 유연성을 제공합니다.

나는 Hyper-V에 대한 경험이 없지만 그것을 사용하는 많은 사람들이 그것을 많이 사용합니다. 그러나 VMWare는 Hyper-V가 수행 할 수없는 (AFAIK) 동일한 물리적 호스트에서 다른 운영 체제를 실행하는 VM을 만들 수 있다는 단순한 대안에 대한 탁월한 대안이라고 생각합니다.

RAM이 사용되는 한 VMWare Infrastructure 3의 한계는 24Gb를 훨씬 뛰어 넘어 사용 가능한 메모리와 각 코어를 프로비저닝 할 수 있지만 게스트가 지원하는 한 게스트간에 원하는대로 제공 할 수 있습니다.

VMWare Infrastructure 3에 대해 배우고 싶다면 VMWAre ESX 서버의 아키텍처와 다른 곳에서는 거의 찾을 수없는 기술적 고려 사항에 대한 토론이 포함되어 있으므로이 책 을 적극 권장 합니다 .

나는 이것이 당신의 질문에 대한 직접적인 대답이 아니며 내 의견을 변명 할 것이지만, 이것이 유용하다는 것을 알기를 바랍니다.


1
링크 주셔서 감사합니다. Microsoft OS 만 다룰 것이기 때문에 Hyper-V를 사용해 보려고하지만 그 이상으로 탐색해야 할 경우 염두에 두어야합니다. 24GB는 극단적으로 보이지만 12GB 이상 $ 500-$ 750 (정확히 잊어 버립니다)에 동의합니다. 몇 년 후이 질문에 대한 대부분의 의견은 기이하게 보일 것입니다! ;-)

RAM에 동의합니다. 그러나 Hyper-V와 관련하여 현재로서는 Win 2K8에서만 작동하며 시나리오에서는 2K3 과만 호환되는 일부 도구가 있다고 생각합니다. 나중에 찾은 결과를 공유 할 수 있습니다!
— Miky Dinescu

0

동일한 컴퓨터에서 Hyper V를 실행하고 Server 2003과 XP의 인스턴스를 호스팅하고 있습니다.

--- 이것은 Hyper V의 동일한 컴퓨터에서 다른 OS를 호스팅 할 수 없다고 말한 사용자의 대답이었습니다. 어쨌든 내가 그것을 읽는 방법입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.