science + computing ag
IT-Dienstleistungen und Software für anspruchsvolle Rechnernetze
Tübingen | München | Berlin | Düsseldorf
InfiniBand-Grundlagen und
Betriebsaspekte in HPC-Clustern
Inhalt
1. Typischer HPC-Stack mit InfiniBand
2. Aufbau und Funktion von IB
3. Fragestellungen im Betrieb
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 2
Inhalt
1. Typischer HPC-Stack mit InfiniBand
2. Aufbau und Funktion von IB
3. Fragestellungen im Betrieb
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 3
Typischer HPC-Stack mit InfiniBand (1/4) Zielsetzung
Vendor: Sun Microsystems
Aufbau/Stand: Okt. 2008
Anwendungen: StarCD, StarCCM+,
StarCD+ICE, StarCD+GTpower
Betriebssystem: CentOS 5.2
Management LAN: Gigabit Ethernet
Interconnect: InfiniBand
Paralleles Filesystem: Lustre 1.6.5.1
Management: s.cluster/VIIP, scVENUS
Queuing-System: Sun Grid Engine (SGE) 6.0
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 4
Typischer HPC-Stack mit InfiniBand (2/4)Aufbau
© 2010 science + computing agscience + computing ag | Nov. 2010
Page 5
Fast Ethernet
(Management LAN):Nortel Networks 2550T
Gigabit Ethernet
(Public LAN):Notel Networks 5510T-48
Compute Nodes:33x Sun Fire X2200 M2
Management Node:Sun Fire x4440
Cluster File System:2x Sun Fire x4540 (OSS)
2x Sun Fire x4100 (MDS)
Sun StorEdge 3320
Interconnect:Voltaire ISR 2012
Typischer HPC-Stack mit InfiniBand (3/4) InfiniBand Fabric + Lustre
© 2010 science + computing agscience + computing ag | Nov. 2010
Page 6
InfiniBand Fabric
Management
Node
Cluster File System: LustreCompute Nodes
…
Shared MDS Storage
StorEdge 3320 Array
8x 146 GByte
OSS Storage
2x Sun Fire X4540
je 48 TByte brutto
Typischer HPC-Stack mit InfiniBand (4/4) InfiniBand Fabric + Lustre
© 2010 science + computing agscience + computing ag | Nov. 2010
Page 7
Cluster Size
Pe
rfo
rma
nc
eNFS Scaling
Lustre File System
Scaling
Linear Scaling
Inhalt
1. Typischer HPC-Stack mit InfiniBand
2. Aufbau und Funktion von InfiniBand (IB)
1. Allgemein
2. Komponenten
3. Kommunikation
4. Subnet Manager
3. Fragestellungen im Betrieb
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 8
Aufbau und Funktion von IB (1/15)Allgemein (I)
InfiniBand Architecture (IBA) ist eine offene Standard-
Architektur für
Server I/O
Server – Server Kommunikation (Netzwerk)
InfiniBand Trade Association (IBTA) (seit 1999)
http://www.infinibandta.org/
OpenFabrics Alliance (OFA) (seit 2004)
http://www.openfabrics.org/
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 9
Aufbau und Funktion von IB (2/15)Allgemein (II)
Netzwerk-Technologie mit seriellen, bidirektionalen
Punkt-zu-Punkt-Verbindungen
Hohe Bandbreiten
Niedrige Latenzzeiten
Niedrige CPU-Belastung durch RDMA (Remote Direct Memory
Access)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 10
Aufbau und Funktion von IB (3/15)Komponenten (I)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 11
EndnodeEndnode
EndnodeEndnode
Switch
SwitchSwitch
Switch
SwitchSwitch
InfiniBand
Fabric
Switched Fabric
InfiniBand-Switches
InfiniBand-Kabel
Aufbau und Funktion von IB (4/15)Komponenten (II)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 12
Link Pin Count Signal Rate
(unidirektional)
Bandbreite (Data Rate)
(~80% Signal Rate)
Data Rate
(bidirektional)
1x 4 2,5 Gb/s 2 Gb/s (250 MB/s) 4 Gb/s (500 MB/s)
4x 16 10 Gb/s 8 Gb/s (1 GB/s) 16 Gb/s (2 GB/s)
12x 48 30 Gb/s 16 Gb/s (3 GB/s) 48 Gb/s (6 GB/s)
Aufbau und Funktion von IB (5/15)Komponenten (III)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 13
Switch
SwitchSwitch
Switch
SwitchSwitch
InfiniBand
Fabric
HCAHCA Memory
CPU CPU CPU
CPU CPU CPU
Memory HCA
Endnodes
Host Channel Adapter
(HCA)
Target Channel Adapter
(TCA)
InfiniBand-VerbsI/O
Modul
TCA
I/O
Modul
TCA
I/O
Modul
TCA
TCA
Controller
Aufbau und Funktion von IB (6/15)Komponenten (IV)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 14
CPU CPU CPU
Memory HCA
HCAHCA Memory
CPU CPU CPU Router
Subnet Manager (SM)
SwitchSwitchSwitch
SwitchSwitch
SwitchTCA
Controller
I/O
Modul
TCA
I/O
Modul
TCA
I/O
Modul
TCA
InfiniBand
Fabric
Konsole /
Subnet Manager
Router
Aufbau und Funktion von IB (7/15)Kommunikation (I)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 15
Switch
Packet
Relay
MAC
Endnode
Remote
Client
IBA
Operation
Network
Link
Encoding
MAC
Router
Packet
Relay
Link
MAC
Endnode
Host
Client
IBA
Operation
Network
Link
Encoding
MAC
Transport
Layer
Network
Layer
Link
Layer
Physical
Layer
Upper
LayersTransactions
Messages (QP)
Inter Subnet Routing
(IPv6)
Subnet
Routing
(LID)
Flow
Control
Aufbau und Funktion von IB (8/15)Kommunikation (II)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 16
Us
er
Sp
ac
e
Applikation
User APIs
IP basierte Appl.
API / VERBS
Ke
rne
lS
pa
ce
Upper Layer Protokoll
Provider
Protokolltreiber
(TCP/IP)
Hardware
Treiber
HardwareHost Channel Adapter
Network Interface Card
Standard Kernel
Bypass
MPI
IPoIB NFS RDMA RDS
…
…
Aufbau und Funktion von IB (9/15)Subnet Manager (SM) – IB-Switch (I)
IB-Switches besitzen Forwarding-Tabellen, die vom Subnet
Manager (SM) konfiguriert werden
Datenpakete werden auf Basis folgender Informationen
weitergeleitet:
Destination Local Identifier (DLID) im Datenpaket
Forwarding-Tabelle des IB-Switches
IB-Switches unterstützen Unicast- und Multicaste-Weiterleitung
Bei Ausfall eines Links konfiguriert der Subnet Manager (SM)
die Forwarding-Tabellen neu
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 17
Aufbau und Funktion von IB (10/15)Subnet Manager (SM) – Funktionen (II)
In jedem InfiniBand-Netzwerk (Subnet) muss ein Subnet
Manager aktiv sein
Verwaltung aller Komponenten im InfiniBand-Netzwerk
Ermittelt die Subnet-Topologie
Weist Local Identifier (LID's) Geräten zu
Berechnet Forwarding-Tabellen (LFT)
Überwacht Änderungen im InfiniBand-Netzwerk
Der Subnet Manager ist in der Regel auf einem Switch oder
Host implementiert
Es ist nur ein aktiver Subnet Manager erlaubt
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 18
Aufbau und Funktion von IB (11/15)Subnet Manager (SM) – Adressierung (III)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 19
GUID – 64 bit
Global Unique IDentifier – „Ethernet MAC-Adresse“
Festgelegt durch den IB-Hersteller
Bleibt bei reboot erhalten (persistent)
3 Typen von GUIDs
Node = HCA als Einheit
Port = Port als Einheit
System = Mehrere GUIDs als Einheit.
Aufbau und Funktion von IB (12/15)Subnet Manager (SM) – Adressierung (IV)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 20
LID – 16 bit
Local IDentifier – „dynamische IP-Adresse“
Festgelegt durch SM bei Aktivierung des Ports
Verteilt der SM dynamisch, können sich ändern
Adressbereiche
0x0000 = reserviert
0x0001 – 0xBFFF = Unicast
0xc001 – 0xFFFE = Multicast
0xFFFF = Reserviert für besondere Zwecke
Aufbau und Funktion von IB (13/15)Subnet Manager (SM) – Forwarding Regeln (V)
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 21
Ein Datenpaket kann einen IB-Switch nicht über
den Port verlassen an dem es angekommen ist
Die Kommunikation der Datenpakte findet ohne Einfluss des Subnet Manager (SM) statt
Keine Verbindung geht mehr als einmal durch den
selben IB-Switch (ASIC)
Das InfiniBand Routing ist statisch
Aufbau und Funktion von IB (14/15)Subnet Manager (SM) – Routing (VI)
Der Subnet Manager ist verantwortlich für das Setzen der
Forwarding-Tabellen auf allen IB-Switches. In der Forwarding-
Tabelle ist jeder Ziel-Adresse (Destination LID) eine Port-
Nummer zugeordnet. Entsprechend der Forwarding-Tabelle
leitet der IB-Switch die ankommenden Datenpaketen an den
Ziel-Port weiter.
Zielsetzung der vom Subnet Manager (SM) verwendeten
Routing-Algorithmen sind:
Correctness: Korrekte Verbindungen (gültige LID-Paths)
zwischen zwei End-Ports
End-Port ist entweder HCA-Port oder Switch-Port
Die Verbindung (LID-Path) vom Ende-Port A nach B kann
sich von der Verbindung B nach A unterscheiden
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 22
Aufbau und Funktion von IB (15/15)Subnet Manager (SM) – Routing (VII)
Shortest path: Auswahl der kürzesten Verbindung (minimale
Anzahl an Hops) zwischen zwei End-Ports. Die SM berechnet
alle möglichen Pfade zwischen den LID‘s und wählt den
Pfade mit der niedersten Anzahl an Hops aus.
No credit loop deadlocks: Bevor ein Datenpaket
abgeschickt wird, muss der Ziel-Knoten zurückmelden, dass
ein genügend großer Puffer (cedit) vorhanden ist, um das
Paket zu empfangen.
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 23
Inhalt
1. Typischer HPC-Stack mit InfiniBand
2. Aufbau und Funktion von IB
3. Fragestellungen im Betrieb
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 24
Fragestellungen im Betrieb (1/2)Allgemein
Ursprünglich mangelnde Integration in das Betriebssystem
Community klein, Ressourcen gering (Foren, Blogs, Wikis)
Guter Support vom Hersteller
Fehleranalyse aufwendig
Komplexe Analyse von Applikations-Problemen (MPI-/IB-Stack)
Erhöhte Komplexität durch Nutzung als MPI- und Storage-Netzwerk
Optimierungen schwer bzw. nicht möglich
Schlechte Performance bei ungünstigem Routing oder nicht
erkannten Fabric Errors wie z.B. defekte Komponenten oder
fehlerhafte Verbindungen
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 25
Fragestellungen im Betrieb (2/2)Beispiel: „Strange Routes“
Ursache: Schlechte Performance bei ungünstigem Routing
Erklärung: Für den eingesetzten Min-Hop-Algorithmus sind die
Routes gleichwertig, denn sowohl die "strange routes" als auch
die normalen enthalten gleich viele Hops.
Lösung: Durch einen Wechsel des Routing-Algorithmus des
Subnet Managers von Min-Hop auf Top-Down konnte dieses
Problem beseitigt werden. Der Top-Down-Algorithmus besitzt
Kenntnis der Topologie und kann daher das Auftreten dieser
"strange routes" vermeiden.
© 2010 science + computing agscience + computing ag | Nov. 2010
Seite 26
Vielen Dank für Ihre Aufmerksamkeit.
science + computing ag
www.science-computing.de
Vortrag von: Harry Schlagenhauf
Telefon: 07071 9457-404
E-Mail: [email protected]
Top Related