Optimizing Overlay-based Virtual Networking Through Optimistic Interrupts and Cut-through Forwarding
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Optimizing Overlay-based Virtual Networking Through Optimistic Interrupts and Cut-through Forwarding

Uploaded on

2012/12/13 福田研輪講

2012/12/13 福田研輪講

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 6

https://twitter.com 4
https://si0.twimg.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Optimizing  Overlay-­‐based  Virtual   Networking  Through  Optimistic  Interrupts  and  Cut-­‐through  Forwarding     Z.  Cui  et  al.,  SC2012 高野 了成 産業技術総合研究所 情報技術研究研究部門 2012年12月13日 福田研輪講@NII
  • 2. SC2012•  24th  ACM/IEEE  International  Conference  for  High   performance  computing,  Networking,  Storage  and   Analysis•  11⽉月10⽇日〜~16⽇日  ⽶米国ユタ州ソルトレイクシティ•  HPC関連のトップカンファレンス –  今年年の採択率率率21%  (100/472)•  TOP500、各種Awards、 Workshop、Tutorial、BoFなど•  巨⼤大な展⽰示会場 –  Intel,  NVIDIA,  Fusion-‐‑‒IO,  etc –  SDN、Big  data関連が⽬目⽴立立った 2
  • 3. 35  Technical  Sessions•  Analysis  of  I/O  Storage •  Optimizing  Application  Performance•  Autotuning  and  Search-‐‑‒Based  Optimization •  Resilience•  Breadth  First  Search •  Visualization  and  Analysis  of  Massive  Data  Sets•  Direct  Numerical  Simulations •  Graph  Algorithms•  Checkpointing •  Locality  in  Programming  Models  and  Runtimes•  GPU  Programming  Models  and  Patterns •  Networks•  Maximizing  Performance  on  Multi-‐‑‒Core  and   •  Runtime-‐‑‒Based  Analysis  and  Optimization Many-‐‑‒Core  Architectures •  Cosmology  Applications•  Cloud  Computing •  Fault  Detection  and  Analysis•  Auto-‐‑‒diagnosis  of  Correctness  and   Performance  Issues •  Grid  Computing •  Performance  Modeling•  DRAM  Power  and  Resiliency  Management •  Big  Data•  Grids/Clouds  Networking •  Memory  Systems•  Weather  and  Seismic  Simulations •  Numerical  Algorithms•  Compiler-‐‑‒Based  Analysis  and  Optimization •  Performance  Optimization•  Fast  Algorithm•  Massively  Parallel  Simulations •  Communication  Optimization •  Linear  Algebra  Algorithms•  Optimizing  I/O  For  Analytics•  Datacenter  Technologies •  New  Computer  Systems 3
  • 4. 概要•  “HPC  cloud”と呼ばれるクラウド上で⾼高性能計算を 実⾏行行するという分野の論論⽂文 –  パラメータサーベイなどEmbarrassingly  Parallelなアプリを クラウド上で実⾏行行するのは現実的な解 –  ガチンコなHPCアプリを実⾏行行するにはI/O性能が問題 –  VMMをパススルーする研究はいくつか存在•  Overlay-‐‑‒based  virtual  networksでも、ベアメタルに 匹敵するレイテンシとスループットを実現する最適化 ⼿手法を提案 –  Optimistic  timer-‐‑‒free  virtual  interrupt  injection –  Zero-‐‑‒copy,  cut-‐‑‒through  data  forwarding•  規模⼤大きくないが、HPC系ベンチマークでしっかり評価 4
  • 5. なぜHPCで仮想化なのか? •  スパコンの90%はLinuxを使⽤用 •  軽量量カーネル(LWK)と⽐比較すると⾼高いオーバヘッド –  メモリ管理理 –  OSノイズ •  仮想化を⽤用いて、アプリが必要なときだけLWKを使⽤用 Department of Computer Science –  主張「仮想化はホストOSのオーバヘッドをバイパスできる」 Our Approach Linux Compute Node OS No Hardware UNIX HPC Application Linux Compute Node OS Yes Lightweight Application Needs LWK? Completes Kernel Hardware Linux VMM layer Linux Compute Node OS Hardware 出典:http://v3vee.org/talks/ross12.pdf 6出典:http://en.wikipedia.org/wiki/File:Operating_systems_used_on_top_500_supercomputers.svg 5
  • 6. Palacios  VMM•  OS-‐‑‒independent,  embeddable  virtual  machine   monitor  (VMM) –  Host  OS:  Linux,  Kitten  LWK,  Minix•  Minimalist  interface•  Low  noise•  Contiguous  memory  allocation User   application•  Passthrough  resources  and User   resource  partitioning User  space application Guest  OS Kernel  space Host  OS Palacioshttp://www.v3vee.org/palacios/ Hardware 6
  • 7. VNETモデル•  ユーザVMのためのL2仮想オーバレイネットワーク –  VMにlocation  independenceを提供 –  VMのトラフィックをconfigurable  overlay  networkに流流す•  元々はVirtuosoと呼ばれるvirtual  machine  grid   computingを構築するためのミドルウェア向けに提案 Fast-path links amongstResilient Star Backbone the VNETs hosting VMs Userʼ’s Foreign host LAN LAN 1 VM Host 1 1 + Proxy IP network VNET + VNET Foreign host LAN 2 A.  Sundararaj  et  al.,  “Increasing  Application   Performance  in  Virtual  Environments   VM 4 VM Through  Run-‐‑‒time  Inference  and   Foreign host Host 4 VM Host 3 2 Host 2 Adaptation,”  HPDC05 + 3 Foreign host + + LAN 4 VNET VNET VNET LAN 3 7
  • 8. VNET/Pアーキテクチャ VNET/P ArchitectureUser Space Guest OS Guest OS Application Application VNET/P Device Device Co t o Control Driver DriverLinux Kernel Virtual NIC Virtual NIC VNET/P Core VNET/P Bridge Palacios VMM Host Driver Physical Network L.  Xia  et  al.,  “VNET/P:  Bridging  the  Cloud  and  High   Performance  Computing  Through  Fast  Overlay   Networking,”  HPDC  2012. 9 8
  • 9. Data PathData  Path  (Packet  Transmission) (packet t ( k t transmission) i i ) Guest TCP/IP Device Device stack Driver Driver VM Exit VM Entry Palacios vNIC VNET/P Core: VNET/P Bridge vNIC Exit Exit Handler Routing/ R ti / Send S d packetk t Handler encapsulation to host network VNET/P Ether IP TCP/UDP Ether IP UDP Ether IP TCP/UDP hdr hdr hdr Data hdr hdr hdr hdr hdr hdr Data Time 10 引⽤用:http://v3vee.org/talks/hpdc12-‐‑‒vnet.pdf 9
  • 10. Performance  Challenges•  Delayed  virtual  interrupts•  Excessive  virtual  interrupts•  High-‐‑‒resolution  timer  noise 10
  • 11. Delayed  Virtual  Interrupts Delayed virtual interrupts パケット受信時のタイムライン Fig.2 Packet Processing Time Line 11
  • 12. 最適化1:  Optimistic  Interrupts Optimization#1:An  optimistic,  timer-‐‑‒free  interrupt  injection  mechanism Optimistic Interrupts –  Early  Virtual  Interrupt  (EVI)  delivery ● Early Virtual Interrupt (EVI) delivery –  End  of  Coalescing  (EoC)  notification ● End of Coalescing (EoC) notification 12
  • 13. Early  Virtual  Interrupt  (EVI)  delivery1.  割込み禁⽌止中 –  VMMで廃棄 –  後から来る割込みに暗黙的にcoalesceされる2.  パケットが利利⽤用可能になる前にゲストハンドラが起動 Optimization#1: –  ゲストで無視 Optimistic Interrupts –  ゲストOSのCPUが無駄になる ● Early Virtual Interrupt (EVI) delivery End of Coalescing (EoC) notification3.  パケットが利利⽤用可能になった ● 後にゲストハンドラが起動 –  ⼗十分早く処理理できなかった –  レイテンシが増加 –  最適化前のVNET/Pと同じ 11/08/12 13
  • 14. End  of  Coalescing  (EoC)  notification•  問題: –  EVI  deliveryが失敗するかもしれない –  ゲストのパケット処理理がオーバレイより速いかもしれない•  解決策: ホストの受信キューが空になったら、割込みを通知 –  ホストNICドライバがオーバレイシステムにEoCを送信 –  仮想NICがvirtual  interruptをinjectする機会を提供•  効果: –  ⾼高解像度度タイマなしでレイテンシを抑制できる •  NICのinterrupt  coalescing  timerを⾼高解像度度タイマを⽤用いて模擬 するvirtual  interrupt  coalescingの既存研究は存在するが、OSノ イズの増加が問題だった 14
  • 15. 最適化2:  Zero-‐‑‒copy  cut-‐‑‒through   data  forwarding•  ホストNICとゲスト仮想NIC間のDMA転送•  割込みあたりの転送パケット数の増加•  (特に⽬目新しい仕組みではない) 15
  • 16. 実験 Testbed•  6ノードクラスタ:8コアAMD  Opteron  +  32GB  RAM   ● 6-node cluster: 8-core AMD Opteron CPU + 32GB RAM + +  NetEffect  NE020  10GbE  NIC NIC NetEffect NE020 10Gbps Ethernet•  VM:  4コアCPU  +  1GB  RAM  +  1  virtio  NIC ● Configuration: 11/08/12 14 16
  • 17. VNET/P+:  Near-‐‑‒native  MPI   P2P  Bandwidth/Latency VNET/ P+: Near- native MPI P2 P Bandwidth VNET/ P+: Near- native MPI P2 P Latency11/08/12 15 11/08/12 17
  • 18. VNET/P+:  Near-‐‑‒native  MPI   Application  Performance NAS VNET/ P+: Near- native NAS VNET/ P+: Near- native Application PerformanceVNET/ P+: Native HPCC MPI Application Performance HPCC MPIFFT11/08/12 HPC  Challenge  Benchmark:  FFT 17 (top) NAS  Parallel  Benchmarks (right) 11/08/12 11/08/12 18
  • 19. まとめVirtual  overlay  networksはベアメタルに匹敵するMPIアプリケーション性能を達成可能•  チャレンジ –  Delayed  virtual  interrupts –  Excessive  virtual  interrupts –  High-‐‑‒resolution  timer  noise•  最適化アプローチ –  Optimistic  interrupts –  Cut-‐‑‒through  forwarding•  最適化の効果 –  レイテンシ:  50%の削減 –  スループット:  >  30%の増加 –  性能のばらつきの抑制 19
  • 20. 蛇⾜足•  Intelは、次世代VTで割込み仮想化のオーバヘッドを 削減(=VM  Exits回数の削減)するための拡張を予定 しており、さらなるI/O性能の改善が⾒見見込まれる –  APIC-‐‑‒register  virtualization –  Virtual  interrupt  delivery  (receiver  side) •  EOI割込みでVM  Exitsが不不要 •  Exit-‐‑‒less  Interrupt*のhardware  acceleration版というイメージ? –  Posted  interrupt  processing•  HPC⽤用途では、VMMパススルーで⼗十分では?•  Virtual  overlay  networks⾼高速化の需要は、むしろ エンタープライズ⽤用途にあるのでは? –  e.g.,  エッジ・オーバレイネットワーク *)  A.  Gordon  et  al.,  “ELI:  Bare-‐‑‒Metal  Performance   for  I/O  Virtualization,”  ASPLOS  2012. 20
  • 21. 特に明記のない図表は次のスライドから引⽤用しました  http://v3vee.org/talks/sc12.pdf 21