얼마전에 이런 문의가 있었습니다.

 

“클럭 스피드가 다르거나 CPU 모델이 다른 호스트로 vMotion 을 하면 Guest OS 내에서 보여지는 정보는 바뀌지 않는다. 그럼 실제 성능은 어떻게 되는지??”

 

질문을 들었을 때는 순간 어…. 호스트를 따라가지 않을까요? 라고 막연히 생각했는데, 실제로 어떠한지 한번 테스트를 해봤습니다.

 

아래는 테스트 환경입니다.

 

Xeon D-1541 (Broadwell) 2.1Ghz –> vMotion 을 위하여 Haswell EVC 적용

Xeon E5-2683 v3 (Haswell) 2.0Ghz

 

성능테스트는 Intel Burn test 를 이용하였고, 공정한 비교를 위해서 ESXi 의 Power Management 는 High Performance 로 통일하였습니다.

 

테스트 VM 의 vCPU 는 4개, Windows VM 입니다.

 

clock speed 가 크게 다르지 않아서 변화가 있을까 했는데, 다행히도(?) 변화하는 부분을 볼 수 있었습니다.

 

테스트 시작전

 

 

Xeon D-1541 이지만, EVC 로 인해서 Code Name 이 Haswell 로 표기되는 것을 볼 수 있습니다.

 

Intel Burn test 결과 218.55 초 소요

 

Haswell 호스트로 vMotion 후 CPU 정보 (변화없음)

 

 

Intel Burn test 결과 (199.39초 소요)

 

 

다시 Xeon D-1541 호스트로 vMotion 후 재수행

 

199.17초 소요

 

 

이게 가능한 이유는 실제로 Guest OS 상에서 보여지는 정보 자체는 vMotion 을 한다 하더라도 변경되지 않지만, vMotion 상에서는 이러한 과정이 진행됩니다.

 

Destination 에 Target VM 생성 –> 메모리 카피 –> Target VM 으로 Switch over –> Source VM off 

 

이런 과정상에서 Hypervisor 레벨에서는 변경된 CPU 정보를 인식하기 때문이라고 볼 수 있겠습니다.

 

lognsip

 

vMotion 하기전 CPU 인식

 

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID vendor: GenuineIntel

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID family: 0x6 model: 0x56 stepping: 0x3

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID codename: Broadwell DE

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID name: Intel(R) Xeon(R) CPU D-1541 @ 2.10GHz

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000000, 0: 0x00000014 0x756e6547 0x6c65746e 0x49656e69

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000001, 0: 0x00050663 0x00100800 0x77fefbff 0xbfebfbff

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000002, 0: 0x76036301 0x00f0b5ff 0x00000000 0x00c30000

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000003, 0: 0x00000000 0x00000000 0x00000000 0x00000000

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000004, 0: 0x1c004121 0x01c0003f 0x0000003f 0x00000000

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000004, 1: 0x1c004122 0x01c0003f 0x0000003f 0x00000000

2021-03-12T09:10:12.155Z| vmx| I125: hostCPUID level 00000004, 2: 0x1c004143 0x01c0003f 0x000001ff 0x00000000

 

vMotion 시작시간 KST 6:18:31 PM

 

 

2021-03-12T09:18:32.505Z| vmx| I125: Vix: [mainDispatch.c:4239]: VMAutomation_ReportPowerOpFinished: statevar=3, newAppState=1881, success=1 additionalError=0

2021-03-12T09:18:32.506Z| vmx| I125: FeatureCompat: No EVC masks.

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID vendor: GenuineIntel

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID family: 0x6 model: 0x3f stepping: 0x2

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID codename: Haswell EP/EN/EX

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID name: Intel(R) Xeon(R) CPU E5-2683 v3 @ 2.00GHz

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000000, 0: 0x0000000f 0x756e6547 0x6c65746e 0x49656e69

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000001, 0: 0x000306f2 0x00200800 0x77fefbff 0xbfebfbff

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000002, 0: 0x76036301 0x00f0b5ff 0x00000000 0x00c10000

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000003, 0: 0x00000000 0x00000000 0x00000000 0x00000000

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000004, 0: 0x3c004121 0x01c0003f 0x0000003f 0x00000000

2021-03-12T09:18:32.513Z| vmx| I125: hostCPUID level 00000004, 1: 0x3c004122 0x01c0003f 0x0000003f 0x00000000

 

별거 아닌 내용일수도 있지만, 참고 하시기 바랍니다.

 

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다