• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
NUMA and VM v0.2 (20130710)
 

NUMA and VM v0.2 (20130710)

on

  • 397 views

 

Statistics

Views

Total Views
397
Views on SlideShare
397
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    NUMA and VM v0.2 (20130710) NUMA and VM v0.2 (20130710) Presentation Transcript

    • JungJungIn call518@gmail.com NUMA: Non-Uniform Memory Access
    • Contents  Introduction  Why NUMA  NUMA and VM  NUMA and Libvirt/QEMU  Summary  Appendix
    • Introduction • NUMA? – Non-Uniform Memory Access ☞ “비 균일 메모리 접근” – SMP 아키텍처에서 확장된 개념 – 메모리 설계 아키텍처 – Local / Remote 메모리 개념 – CPU + Memory Set 개념 – Bus Topology 형태 – Etc………………
    • Introduction • Diff: http://cto.vmware.com/vnuma-what-it-is-and-why-it-matters/
    • Why - Traditional • UMA/SMP 아키텍처 – CPU 처리속도 < Memory 처리속도 – 단독 Core 또는 소수의 Cores – 모든 Core에 대해 모든 Memory 공유 (Uniform) • Issue – CPU 처리속도 > Memory 처리속도 – Socket/Core의 집적도, 수량 증가 – Memory 경쟁 심화로 CPU 병목 심화
    • Why - NUMA • “Node” 개념 도입 – 일정 수의 Cores, Memory를 묶어 Node라는 개념으로 그룹화. – Socket입장에서, Local메모리와 Remote메 모리로 나뉨. – Remote메모리 접근 비용이 Local메모리 접 근 비용보다 비싸다. (Bus 통신) – Node의 크기는 H/W제조사에 따라 다름. – Bus형 구조라 확장성 용이. – 매우 가깝게 연결된 클러스터 컴퓨터와 유 사.
    • NUMA and VM Out of Consideration Consideration (CPU Pinning) NODE NODE CPUs CPUs MEM VM2 MEM VM2 NODE NODE CPUs VM1 CPUs VM2 MEM VM1 VM2 MEM VM2 VM1 VM2 VM1 VM1 Slow
    • NUMA and VM • Question – 단일 NUMA의 Core, Memory 사이즈를 초과하는 VM생성 요청시? • Case 1. Core수는 만족하나, Memory를 초과 2. Memory는 만족하나, Core를 초과 3. Core, Memory 모두 초과 (이 경우, 어떤 식으로든 Host의 NUMA 정보를 Guest로의 노출/전달 요구됨) => 현 시점의 NUMA로는 가능은 하나, NUMA정보 노출이 불가할 경 우, 성능상 단일 NUMA노드의 사이즈를 초과하는 VM생성은 피할 것 을 권고. (VMware, MS, RHEL, SUSE)
    • NUMA and Libvirt/QEMU • Querying host CPU / NUMA topology
    • NUMA and VM • Querying host CPU / NUMA topology - Detail
    • NUMA and VM • libvirt NUMA tuning (1)
    • NUMA and VM • libvirt NUMA tuning (2)-1
    • NUMA and VM • libvirt NUMA tuning (2)-2
    • Summary • NUMA는 SMP/UMA의 약점을 보완하는 새로운 메모리 관리 방법. • NUMA는 Node라는 단위를 가지며 각 Node는 Local CPU/Memory로 구성. • Bus구조를 기반으로 확장성은 용이하나, 처리 비용이 상대적으로 비싸다. • 비 균일이라, Cache일관성 제공이 어려운 구조이나, ccNUMA(Cache-coherent NUMA)로 분류되는 NUMA는 캐시 일관성을 제공한다. • 현 시점의 NUMA H/W에서는 VM의 생성 사이즈가 단일 Node의 사이즈를 넘지 않으며, vCPU Pinning 등을 활용해, 단일 Node내로 제한 할 것을 권장. • 실제 VM운용에 있어 최대한 Node를 벗어나는 요청이 발생하지 않도록 구성/배치 하는 것이 이상적이 나, VM Management 관점에서 볼 때, 현실적으로 적용하기가 쉽지는 않을 것으로 예상. (Note) Fedora 프로젝트에는 numad라는 도구가 지원. – User레벨 Daemon 이며, 성능 향상 및 메모리 대기 시간을 최소화하기 위해 Application 및 VM의 NUMA 자원 및 이용상태를 모니터링 할 수 있다. http://fedoraproject.org/wiki/Features/numad
    • Appendix • Performance: SMP/UMA vs. NUMA
    • Appendix • Performance: Local vs. Remote (1)
    • Appendix • Performance: Local vs. Remote (2)
    • Reference Documents • NUMA(Non-Uniform Memory Access) 이해 – http://msdn.microsoft.com/ko-kr/library/ms178144(v=sql.105).aspx • THE IMPACT OF NUMA ON VIRTUALIZING BUSINESS CRITICAL APPLICATIONS – http://cloudarchitectmusings.com/2012/12/17/the-impact-of-numa-on-virtualizing-business-critical-applications/ • Using NUMA on RHEL 6 – http://www.redhat.com/summit/2012/pdf/2012-DevDay-Lab-NUMA-Hacker.pdf • NUMA for Dell PowerEdge 12th Generation Servers – http://goo.gl/WhDmc • Controlling guest CPU & NUMA affinity in libvirt with QEMU, KVM & Xen – https://www.berrange.com/posts/2010/02/12/controlling-guest-cpu-numa-affinity-in-libvirt-with-qemu-kvm-xen/ • Wikipedia - NUMA – http://ko.wikipedia.org/wiki/%EB%B6%88%EA%B7%A0%EC%9D%BC_%EA%B8%B0%EC%96%B5_%EC%9E% A5%EC%B9%98_%EC%A0%91%EA%B7%BC • RHEL Virtualization Documents – https://access.redhat.com/site/documentation/en- US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Tuning_and_Optimization_Guide/sect- Virtualization_Tuning_Optimization_Guide-NUMA-NUMA_and_libvirt.html • vNUMA: What it is and why it matters – http://cto.vmware.com/vnuma-what-it-is-and-why-it-matters/
    • Thank You.