InfiniBand and 10-Gigabit Ethernet for Dummies

Designing Cloud and Grid Computing Systems
with InfiniBand and High-Speed Ethernet
A Tutorial at CCGrid ’11
by
Dhabaleswar K. (DK) Panda
Sayantan Sur
The Ohio State University
The Ohio State University
E-mail: [email protected]
E-mail: [email protected]
http://www.cse.ohio-state.edu/~panda
http://www.cse.ohio-state.edu/~surs
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
2
Current and Next Generation Applications and
Computing Systems
•
Diverse Range of Applications
–
•
Processing and dataset characteristics vary
Growth of High Performance Computing
– Growth in processor performance
• Chip density doubles every 18 months
– Growth in commodity networking
• Increase in speed/features + reducing cost
•
Different Kinds of Systems
–
Clusters, Grid, Cloud, Datacenters, …..
CCGrid '11
3
Cluster Computing Environment
Compute cluster
Frontend
LAN
LAN
Storage cluster
Compute
Node
Compute
Node
Compute
Node
Compute
Node
CCGrid '11
L
A
N
Meta-Data
Manager
Meta
Data
I/O Server
Node
Data
I/O Server
Node
Data
I/O Server
Node
Data
4
Trends for Computing Clusters in the Top 500 List
(http://www.top500.org)
Nov. 1996: 0/500 (0%)
Nov. 2001: 43/500 (8.6%)
Nov. 2006: 361/500 (72.2%)
Jun. 1997: 1/500 (0.2%)
Jun. 2002: 80/500 (16%)
Jun. 2007: 373/500 (74.6%)
Nov. 1997: 1/500 (0.2%)
Nov. 2002: 93/500 (18.6%)
Nov. 2007: 406/500 (81.2%)
Jun. 1998: 1/500 (0.2%)
Jun. 2003: 149/500 (29.8%)
Jun. 2008: 400/500 (80.0%)
Nov. 1998: 2/500 (0.4%)
Nov. 2003: 208/500 (41.6%)
Nov. 2008: 410/500 (82.0%)
Jun. 1999: 6/500 (1.2%)
Jun. 2004: 291/500 (58.2%)
Jun. 2009: 410/500 (82.0%)
Nov. 1999: 7/500 (1.4%)
Nov. 2004: 294/500 (58.8%)
Nov. 2009: 417/500 (83.4%)
Jun. 2000: 11/500 (2.2%)
Jun. 2005: 304/500 (60.8%)
Jun. 2010: 424/500 (84.8%)
Nov. 2000: 28/500 (5.6%)
Nov. 2005: 360/500 (72.0%)
Nov. 2010: 415/500 (83%)
Jun. 2001: 33/500 (6.6%)
Jun. 2006: 364/500 (72.8%)
Jun. 2011: To be announced
CCGrid '11
5
Grid Computing Environment
Compute cluster
Compute cluster
LAN
Frontend
LAN
Frontend
LAN
LAN
WAN
Storage cluster
Compute
Node
Meta-Data
Manager
Compute
Node
I/O Server
Node
Compute
Node
Compute
Node
L
A
N
I/O Server
Node
I/O Server
Node
Storage cluster
Meta
Data
Compute
Node
Data
Compute
Node
Data
Compute
Node
Data
Compute
Node
L
A
N
Meta-Data
Manager
Meta
Data
I/O Server
Node
Data
I/O Server
Node
Data
I/O Server
Node
Data
Compute cluster
LAN
Frontend
LAN
Storage cluster
Compute
Node
Compute
Node
Compute
Node
Compute
Node
CCGrid '11
Meta-Data
Manager
L
A
N
Meta
Data
I/O Server
Node
Data
I/O Server
Node
Data
I/O Server
Node
Data
6
Multi-Tier Datacenters and Enterprise Computing
Enterprise Multi-tier Datacenter
Routers/
Servers
Application
Server
Database
Server
Routers/
Servers
Application
Server
Database
Server
Routers/
Servers
.
.
Routers/
Servers
Tier1
CCGrid '11
Switch
Application
Server
Switch
Switch
Database
Server
.
.
Application
Server
Tier2
Database
Server
Tier3
7
Integrated High-End Computing Environments
Storage cluster
Compute cluster
Compute
Node
Compute
Node
Frontend
Compute
Node
LAN
LAN/WAN
L
A
N
Compute
Node
Meta-Data
Manager
Meta
Data
I/O Server
Node
Data
I/O Server
Node
Data
I/O Server
Node
Data
Enterprise Multi-tier Datacenter for Visualization and Mining
Routers/
Servers
Routers/
Servers
Routers/
Servers
.
.
Routers/
Servers
Tier1
CCGrid '11
Switch
Application
Server
Application
Server
Application
Server
.
.
Database
Server
Switch
Database
Server
Switch
Database
Server
Application
Server
Database
Server
Tier2
Tier3
8
Cloud Computing Environments
VM
VM
Physical Machine
Meta-Data
Local Storage
VM
VM
Virtual FS
Physical Machine
Local Storage
VM
Meta
Data
LAN
I/O Server
Data
I/O Server
Data
I/O Server
Data
I/O Server
Data
VM
Physical Machine
VM
Local Storage
VM
Physical Machine
Local Storage
CCGrid '11
9
Hadoop Architecture
• Underlying Hadoop Distributed
File System (HDFS)
• Fault-tolerance by replicating
data blocks
• NameNode: stores information
on data blocks
• DataNodes: store blocks and
host Map-reduce computation
• JobTracker: track jobs and
detect failure
• Model scales but high amount
of communication during
intermediate phases
CCGrid '11
10
Memcached Architecture
System
Area
Network
System
Area
Network
Internet
Web-frontend
Servers
Memcached
Servers
Database
Servers
• Distributed Caching Layer
– Allows to aggregate spare memory from multiple nodes
– General purpose
• Typically used to cache database queries, results of API calls
• Scalable model, but typical usage very network intensive
CCGrid '11
11
Networking and I/O Requirements
• Good System Area Networks with excellent performance
(low latency, high bandwidth and low CPU utilization) for
inter-processor communication (IPC) and I/O
• Good Storage Area Networks high performance I/O
• Good WAN connectivity in addition to intra-cluster
SAN/LAN connectivity
• Quality of Service (QoS) for interactive applications
• RAS (Reliability, Availability, and Serviceability)
• With low cost
CCGrid '11
12
Major Components in Computing Systems
• Hardware components
P0
Core0
Core1
Core2
Core3
Memory
– I/O bus or links
Processing
Bottlenecks
– Network adapters/switches
P1
Core0
Core2
– Processing cores and memory
subsystem
• Software components
Core1
I
/
O
Core3
I/O Interface
B
Bottlenecks
u
s
Memory
– Communication stack
• Bottlenecks can artificially
limit the network performance
the user perceives
Network Adapter
Network
Bottlenecks
Network
Switch
CCGrid '11
13
Processing Bottlenecks in Traditional Protocols
• Ex: TCP/IP, UDP/IP
• Generic architecture for all networks
• Host processor handles almost all aspects
of communication
– Data buffering (copies on sender and
receiver)
P0
Core0
Core1
Core2
Core3
Processing
Bottlenecks
P1
Core0
Core1
Core2
Core3
– Data integrity (checksum)
I
/
O
Memory
B
u
s
– Routing aspects (IP routing)
Network Adapter
• Signaling between different layers
– Hardware interrupt on packet arrival or
transmission
Memory
Network
Switch
– Software signals between different layers
to handle protocol processing in different
priority levels
CCGrid '11
14
Bottlenecks in Traditional I/O Interfaces and Networks
• Traditionally relied on bus-based
technologies (last mile bottleneck)
P0
Core0
Core1
Core2
Core3
– E.g., PCI, PCI-X
Memory
P1
– One bit per wire
– Performance increase through:
Core0
Core1
Core2
Core3
I
/
O
Memory
I/O Interface
B
Bottlenecks
• Increasing clock speed
u
s
• Increasing bus width
Network Adapter
– Not scalable:
• Cross talk between bits
• Skew between wires
Network
Switch
• Signal integrity makes it difficult to increase bus
width significantly, especially for high clock speeds
PCI
1990
33MHz/32bit: 1.05Gbps (shared bidirectional)
PCI-X
1998 (v1.0)
2003 (v2.0)
133MHz/64bit: 8.5Gbps (shared bidirectional)
266-533MHz/64bit: 17Gbps (shared bidirectional)
CCGrid '11
15
Bottlenecks on Traditional Networks
P0
• Network speeds saturated at
around 1Gbps
– Features provided were limited
Core0
Core1
Core2
Core3
Memory
P1
Core0
Core1
Core2
Core3
I
/
O
– Commodity networks were not
considered scalable enough for very
large-scale systems
Memory
B
u
s
Network Adapter
Network
Bottlenecks
Network
Switch
CCGrid '11
Ethernet (1979 - )
10 Mbit/sec
Fast Ethernet (1993 -)
100 Mbit/sec
Gigabit Ethernet (1995 -)
1000 Mbit /sec
ATM (1995 -)
155/622/1024 Mbit/sec
Myrinet (1993 -)
1 Gbit/sec
Fibre Channel (1994 -)
1 Gbit/sec
16
Motivation for InfiniBand and High-speed Ethernet
• Industry Networking Standards
• InfiniBand and High-speed Ethernet were introduced into
the market to address these bottlenecks
• InfiniBand aimed at all three bottlenecks (protocol
processing, I/O bus, and network speed)
• Ethernet aimed at directly handling the network speed
bottleneck and relying on complementary technologies to
alleviate the protocol processing and I/O bus bottlenecks
CCGrid '11
17
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
18
IB Trade Association
• IB Trade Association was formed with seven industry leaders
(Compaq, Dell, HP, IBM, Intel, Microsoft, and Sun)
• Goal: To design a scalable and high performance communication
and I/O architecture by taking an integrated view of computing,
networking, and storage technologies
• Many other industry participated in the effort to define the IB
architecture specification
• IB Architecture (Volume 1, Version 1.0) was released to public
on Oct 24, 2000
– Latest version 1.2.1 released January 2008
• http://www.infinibandta.org
CCGrid '11
19
High-speed Ethernet Consortium (10GE/40GE/100GE)
• 10GE Alliance formed by several industry leaders to take
the Ethernet family to the next speed step
• Goal: To achieve a scalable and high performance
communication architecture while maintaining backward
compatibility with Ethernet
• http://www.ethernetalliance.org
• 40-Gbps (Servers) and 100-Gbps Ethernet (Backbones,
Switches, Routers): IEEE 802.3 WG
• Energy-efficient and power-conscious protocols
– On-the-fly link speed reduction for under-utilized links
CCGrid '11
20
Tackling Communication Bottlenecks with IB and HSE
• Network speed bottlenecks
• Protocol processing bottlenecks
• I/O interface bottlenecks
CCGrid '11
21
Network Bottleneck Alleviation: InfiniBand (“Infinite
Bandwidth”) and High-speed Ethernet (10/40/100 GE)
• Bit serial differential signaling
– Independent pairs of wires to transmit independent
data (called a lane)
– Scalable to any number of lanes
– Easy to increase clock speed of lanes (since each lane
consists only of a pair of wires)
• Theoretically, no perceived limit on the
bandwidth
CCGrid '11
22
Network Speed Acceleration with IB and HSE
Ethernet (1979 - )
10 Mbit/sec
Fast Ethernet (1993 -)
100 Mbit/sec
Gigabit Ethernet (1995 -)
1000 Mbit /sec
ATM (1995 -)
155/622/1024 Mbit/sec
Myrinet (1993 -)
1 Gbit/sec
Fibre Channel (1994 -)
1 Gbit/sec
InfiniBand (2001 -)
2 Gbit/sec (1X SDR)
10-Gigabit Ethernet (2001 -)
10 Gbit/sec
InfiniBand (2003 -)
8 Gbit/sec (4X SDR)
InfiniBand (2005 -)
16 Gbit/sec (4X DDR)
24 Gbit/sec (12X SDR)
InfiniBand (2007 -)
32 Gbit/sec (4X QDR)
40-Gigabit Ethernet (2010 -)
40 Gbit/sec
InfiniBand (2011 -)
56 Gbit/sec (4X FDR)
InfiniBand (2012 -)
100 Gbit/sec (4X EDR)
20 times in the last 9 years
CCGrid '11
23
InfiniBand Link Speed Standardization Roadmap
Per Lane & Rounded Per Link Bandwidth (Gb/s)
# of
Lanes per
direction
4G-IB
DDR
8G-IB
QDR
14G-IB-FDR
(14.025)
26G-IB-EDR
(25.78125)
12
48+48
96+96
168+168
300+300
8
32+32
64+64
112+112
200+200
4
16+16
32+32
56+56
100+100
1
4+4
8+8
14+14
25+25
NDR = Next Data Rate
HDR = High Data Rate
EDR = Enhanced Data Rate
FDR = Fourteen Data Rate
QDR = Quad Data Rate
DDR = Double Data Rate
SDR = Single Data Rate (not shown)
12x NDR
12x HDR
8x NDR
300G-IB-EDR
168G-IB-FDR
8x HDR
4x NDR
Bandwidth per direction (Gbps)
96G-IB-QDR
200G-IB-EDR
112G-IB-FDR
4x HDR
48G-IB-DDR
48G-IB-QDR
x12
100G-IB-EDR
56G-IB-FDR
1x NDR
1x HDR
x8
32G-IB-DDR
25G-IB-EDR
14G-IB-FDR
32G-IB-QDR
x4
2005
16G-IB-DDR
8G-IB-QDR
x1
-
2006
CCGrid '11
-
2007
-
2008
-
2009
-
2010
-
2011
2015
24
Tackling Communication Bottlenecks with IB and HSE
• Network speed bottlenecks
• Protocol processing bottlenecks
• I/O interface bottlenecks
CCGrid '11
25
Capabilities of High-Performance Networks
• Intelligent Network Interface Cards
• Support entire protocol processing completely in hardware
(hardware protocol offload engines)
• Provide a rich communication interface to applications
– User-level communication capability
– Gets rid of intermediate data buffering requirements
• No software signaling between communication layers
– All layers are implemented on a dedicated hardware unit, and not
on a shared host CPU
CCGrid '11
26
Previous High-Performance Network Stacks
• Fast Messages (FM)
– Developed by UIUC
• Myricom GM
– Proprietary protocol stack from Myricom
• These network stacks set the trend for high-performance
communication requirements
– Hardware offloaded protocol stack
– Support for fast and secure user-level access to the protocol stack
• Virtual Interface Architecture (VIA)
– Standardized by Intel, Compaq, Microsoft
– Precursor to IB
CCGrid '11
27
IB Hardware Acceleration
• Some IB models have multiple hardware accelerators
– E.g., Mellanox IB adapters
• Protocol Offload Engines
– Completely implement ISO/OSI layers 2-4 (link layer, network layer
and transport layer) in hardware
• Additional hardware supported features also present
– RDMA, Multicast, QoS, Fault Tolerance, and many more
CCGrid '11
28
Ethernet Hardware Acceleration
• Interrupt Coalescing
– Improves throughput, but degrades latency
• Jumbo Frames
– No latency impact; Incompatible with existing switches
• Hardware Checksum Engines
– Checksum performed in hardware  significantly faster
– Shown to have minimal benefit independently
• Segmentation Offload Engines (a.k.a. Virtual MTU)
– Host processor “thinks” that the adapter supports large Jumbo
frames, but the adapter splits it into regular sized (1500-byte) frames
– Supported by most HSE products because of its backward
compatibility  considered “regular” Ethernet
– Heavily used in the “server-on-steroids” model
• High performance servers connected to regular clients
CCGrid '11
29
TOE and iWARP Accelerators
• TCP Offload Engines (TOE)
– Hardware Acceleration for the entire TCP/IP stack
– Initially patented by Tehuti Networks
– Actually refers to the IC on the network adapter that implements
TCP/IP
– In practice, usually referred to as the entire network adapter
• Internet Wide-Area RDMA Protocol (iWARP)
– Standardized by IETF and the RDMA Consortium
– Support acceleration features (like IB) for Ethernet
• http://www.ietf.org & http://www.rdmaconsortium.org
CCGrid '11
30
Converged (Enhanced) Ethernet (CEE or CE)
• Also known as “Datacenter Ethernet” or “Lossless Ethernet”
– Combines a number of optional Ethernet standards into one umbrella
as mandatory requirements
• Sample enhancements include:
– Priority-based flow-control: Link-level flow control for each Class of
Service (CoS)
– Enhanced Transmission Selection (ETS): Bandwidth assignment to
each CoS
– Datacenter Bridging Exchange Protocols (DBX): Congestion
notification, Priority classes
– End-to-end Congestion notification: Per flow congestion control to
supplement per link flow control
CCGrid '11
31
Tackling Communication Bottlenecks with IB and HSE
• Network speed bottlenecks
• Protocol processing bottlenecks
• I/O interface bottlenecks
CCGrid '11
32
Interplay with I/O Technologies
• InfiniBand initially intended to replace I/O bus
technologies with networking-like technology
– That is, bit serial differential signaling
– With enhancements in I/O technologies that use a similar
architecture (HyperTransport, PCI Express), this has become
mostly irrelevant now
• Both IB and HSE today come as network adapters that plug
into existing I/O technologies
CCGrid '11
33
Trends in I/O Interfaces with Servers
• Recent trends in I/O interfaces show that they are nearly
matching head-to-head with network speeds (though they
still lag a little bit)
PCI
1990
33MHz/32bit: 1.05Gbps (shared bidirectional)
PCI-X
1998 (v1.0)
2003 (v2.0)
133MHz/64bit: 8.5Gbps (shared bidirectional)
266-533MHz/64bit: 17Gbps (shared bidirectional)
AMD HyperTransport (HT)
2001 (v1.0), 2004 (v2.0)
2006 (v3.0), 2008 (v3.1)
102.4Gbps (v1.0), 179.2Gbps (v2.0)
332.8Gbps (v3.0), 409.6Gbps (v3.1)
(32 lanes)
PCI-Express (PCIe)
by Intel
2003 (Gen1), 2007 (Gen2)
2009 (Gen3 standard)
Gen1: 4X (8Gbps), 8X (16Gbps), 16X (32Gbps)
Gen2: 4X (16Gbps), 8X (32Gbps), 16X (64Gbps)
Gen3: 4X (~32Gbps), 8X (~64Gbps), 16X (~128Gbps)
Intel QuickPath
Interconnect (QPI)
2009
153.6-204.8Gbps (20 lanes)
CCGrid '11
34
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
35
IB, HSE and their Convergence
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
– Novel Features
– Subnet Management and Services
• High-speed Ethernet Family
– Internet Wide Area RDMA Protocol (iWARP)
– Alternate vendor-specific protocol stacks
• InfiniBand/Ethernet Convergence Technologies
– Virtual Protocol Interconnect (VPI)
– (InfiniBand) RDMA over Ethernet (RoE)
– (InfiniBand) RDMA over Converged (Enhanced) Ethernet (RoCE)
CCGrid '11
36
Comparing InfiniBand with Traditional Networking Stack
HTTP, FTP, MPI,
File Systems
Application Layer
Application Layer
OpenFabrics Verbs
Sockets Interface
TCP, UDP
Routing
DNS management tools
Flow-control and
Error Detection
Copper, Optical or Wireless
CCGrid '11
MPI, PGAS, File Systems
Transport Layer
Transport Layer
Network Layer
Network Layer
Link Layer
Link Layer
Physical Layer
Physical Layer
Traditional Ethernet
InfiniBand
RC (reliable), UD (unreliable)
Routing
Flow-control, Error Detection
OpenSM (management tool)
Copper or Optical
37
IB Overview
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
• Communication Model
• Memory registration and protection
• Channel and memory semantics
– Novel Features
• Hardware Protocol Offload
– Link, network and transport layer features
– Subnet Management and Services
CCGrid '11
38
Components: Channel Adapters
• Used by processing and I/O units to
• Programmable DMA engines with
QP
Channel Adapter
…
DMA
Port
Port
VL
VL
…
VL
VL
VL
VL
VL
VL
…
SMA
MTP
C
Transport
protection features
• May have multiple ports
QP
QP
QP
• Consume & generate IB packets
Memory
…
…
VL
connect to fabric
Port
– Independent buffering channeled
through Virtual Lanes
• Host Channel Adapters (HCAs)
CCGrid '11
39
Components: Switches and Routers
Switch
…
Port
Port
…
VL
VL
VL
…
VL
VL
VL
…
VL
VL
VL
Packet Relay
Port
Router
Port
Port
…
…
VL
VL
VL
…
VL
VL
VL
…
VL
VL
VL
GRH Packet Relay
Port
• Relay packets from a link to another
• Switches: intra-subnet
• Routers: inter-subnet
• May support multicast
CCGrid '11
40
Components: Links & Repeaters
• Network Links
– Copper, Optical, Printed Circuit wiring on Back Plane
– Not directly addressable
• Traditional adapters built for copper cabling
– Restricted by cable length (signal integrity)
– For example, QDR copper cables are restricted to 7m
• Intel Connects: Optical cables with Copper-to-optical
conversion hubs (acquired by Emcore)
– Up to 100m length
– 550 picoseconds
copper-to-optical conversion latency
• Available from other vendors (Luxtera)
(Courtesy Intel)
• Repeaters (Vol. 2 of InfiniBand specification)
CCGrid '11
41
IB Overview
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
• Communication Model
• Memory registration and protection
• Channel and memory semantics
– Novel Features
• Hardware Protocol Offload
– Link, network and transport layer features
– Subnet Management and Services
CCGrid '11
42
IB Communication Model
Basic InfiniBand
Communication
Semantics
CCGrid '11
43
Queue Pair Model
• Each QP has two queues
– Send Queue (SQ)
– Receive Queue (RQ)
QP
Send
CQ
Recv
WQEs
CQEs
– Work requests are queued to the QP
(WQEs: “Wookies”)
InfiniBand Device
• QP to be linked to a Complete Queue
(CQ)
– Gives notification of operation
completion from QPs
– Completed WQEs are placed in the
CQ with additional information
(CQEs: “Cookies”)
CCGrid '11
44
Memory Registration
Before we do any communication:
All memory used for communication must
be registered
•
4
Kernel
2
Send virtual address and length
HCA/RNIC
Process cannot map memory
that it does not own (security !)
3. HCA caches the virtual to physical
mapping and issues a handle
•
3
CCGrid '11
•
2. Kernel handles virtual->physical
mapping and pins region into
physical memory
Process
1
1. Registration Request
Includes an l_key and r_key
4. Handle is returned to application
45
Memory Protection
For security, keys are required for all
operations that touch buffers
• To send or receive data the l_key
must be provided to the HCA
Process
• HCA verifies access to local
memory
l_key
Kernel
HCA/NIC
• For RDMA, initiator must have the
r_key for the remote virtual address
• Possibly exchanged with a
send/recv
• r_key is not encrypted in IB
r_key is needed for RDMA operations
CCGrid '11
46
Communication in the Channel Semantics
(Send/Receive Model)
Memory
Segment
Processor
Memory
Processor
Memory
Memory
Segment
Memory
Segment
Memory
Segment
Memory
Segment
QP
CQ
Send
Recv
Processor is involved only to:
QP
Send
Recv
CQ
1. Post receive WQE
2. Post send WQE
3. Pull out completed CQEs from the CQ
InfiniBand Device
Send WQE contains information about the
send buffer (multiple non-contiguous
segments)
CCGrid '11
Hardware ACK
InfiniBand Device
Receive WQE contains information on the receive
buffer (multiple non-contiguous segments);
Incoming messages have to be matched to a
receive WQE to know where to place
47
Communication in the Memory Semantics (RDMA Model)
Memory
Segment
Processor
Memory
Processor
Memory
Memory
Segment
Memory
Segment
Memory
Segment
QP
Initiator processor is involved only to:
Send
Recv
Recv
1. Post send WQE
2. Pull out completed CQE from the send CQ
QP
CQ
Send
CQ
No involvement from the target processor
InfiniBand Device
Hardware ACK
InfiniBand Device
Send WQE contains information about the
send buffer (multiple segments) and the
receive buffer (single segment)
CCGrid '11
48
Communication in the Memory Semantics (Atomics)
Processor
Memory
Processor
Memory
Source
Memory
Segment
Memory
Segment
Destination
Memory
Segment
QP
Initiator processor is involved only to:
Send
Recv
Recv
1. Post send WQE
2. Pull out completed CQE from the send CQ
QP
CQ
Send
CQ
No involvement from the target processor
InfiniBand Device
Send WQE contains information about the
send buffer (single 64-bit segment) and the
receive buffer (single 64-bit segment)
CCGrid '11
OP
InfiniBand Device
IB supports compare-and-swap and
fetch-and-add atomic operations
49
IB Overview
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
• Communication Model
• Memory registration and protection
• Channel and memory semantics
– Novel Features
• Hardware Protocol Offload
– Link, network and transport layer features
– Subnet Management and Services
CCGrid '11
50
Hardware Protocol Offload
Complete
Hardware
Implementations
Exist
CCGrid '11
51
Link/Network Layer Capabilities
• Buffering and Flow Control
• Virtual Lanes, Service Levels and QoS
• Switching and Multicast
CCGrid '11
52
Buffering and Flow Control
• IB provides three-levels of communication throttling/control
mechanisms
– Link-level flow control (link layer feature)
– Message-level flow control (transport layer feature): discussed later
– Congestion control (part of the link layer features)
• IB provides an absolute credit-based flow-control
– Receiver guarantees that enough space is allotted for N blocks of data
– Occasional update of available credits by the receiver
• Has no relation to the number of messages, but only to the
total amount of data being sent
– One 1MB message is equivalent to 1024 1KB messages (except for
rounding off at message boundaries)
CCGrid '11
53
Virtual Lanes
• Multiple virtual links within
same physical link
– Between 2 and 16
• Separate buffers and flow
control
– Avoids Head-of-Line
Blocking
• VL15: reserved for
management
• Each port supports one or
more data VL
CCGrid '11
54
Service Levels and QoS
• Service Level (SL):
– Packets may operate at one of 16 different SLs
– Meaning not defined by IB
• SL to VL mapping:
– SL determines which VL on the next link is to be used
– Each port (switches, routers, end nodes) has a SL to VL mapping
table configured by the subnet management
• Partitions:
– Fabric administration (through Subnet Manager) may assign
specific SLs to different partitions to isolate traffic flows
CCGrid '11
55
Traffic Segregation Benefits
IPC, Load Balancing, Web Caches, ASP
Servers
Servers
Servers
Virtual Lanes
InfiniBand
Network
InfiniBand
Fabric
Fabric
IP Network
Routers, Switches
VPN’s, DSLAMs
Storage Area Network
RAID, NAS, Backup
(Courtesy: Mellanox Technologies)
CCGrid '11
• InfiniBand Virtual Lanes
allow the multiplexing of
multiple independent logical
traffic flows on the same
physical link
• Providing the benefits of
independent, separate
networks while eliminating
the cost and difficulties
associated with maintaining
two or more networks
56
Switching (Layer-2 Routing) and Multicast
• Each port has one or more associated LIDs (Local
Identifiers)
– Switches look up which port to forward a packet to based on its
destination LID (DLID)
– This information is maintained at the switch
• For multicast packets, the switch needs to maintain
multiple output ports to forward the packet to
– Packet is replicated to each appropriate output port
– Ensures at-most once delivery & loop-free forwarding
– There is an interface for a group management protocol
• Create, join/leave, prune, delete group
CCGrid '11
57
Switch Complex
• Basic unit of switching is a crossbar
– Current InfiniBand products use either 24-port (DDR) or 36-port
(QDR) crossbars
• Switches available in the market are typically collections of
crossbars within a single cabinet
• Do not confuse “non-blocking switches” with “crossbars”
– Crossbars provide all-to-all connectivity to all connected nodes
• For any random node pair selection, all communication is non-blocking
– Non-blocking switches provide a fat-tree of many crossbars
• For any random node pair selection, there exists a switch
configuration such that communication is non-blocking
• If the communication pattern changes, the same switch configuration
might no longer provide fully non-blocking communication
CCGrid '11
58
IB Switching/Routing: An Example
An Example IB Switch Block Diagram (Mellanox 144-Port)
Switching: IB supports
Virtual Cut Through (VCT)
Spine Blocks
1 2 3 4
P2
P1
LID: 2
LID: 4
Leaf Blocks
DLID
Out-Port
Forwarding Table
2
1
4
4
• Someone has to setup the forwarding tables and
give every port an LID
– “Subnet Manager” does this work
• Different routing algorithms give different paths
CCGrid '11
Routing: Unspecified by IB SPEC
Up*/Down*, Shift are popular
routing engines supported by OFED
• Fat-Tree is a popular
topology for IB Cluster
– Different over-subscription
ratio may be used
• Other topologies are also
being used
– 3D Torus (Sandia Red Sky)
and SGI Altix (Hypercube)
59
More on Multipathing
• Similar to basic switching, except…
– … sender can utilize multiple LIDs associated to the same
destination port
• Packets sent to one DLID take a fixed path
• Different packets can be sent using different DLIDs
• Each DLID can have a different path (switch can be configured
differently for each DLID)
• Can cause out-of-order arrival of packets
– IB uses a simplistic approach:
• If packets in one connection arrive out-of-order, they are dropped
– Easier to use different DLIDs for different connections
• This is what most high-level libraries using IB do!
CCGrid '11
60
IB Multicast Example
CCGrid '11
61
Hardware Protocol Offload
Complete
Hardware
Implementations
Exist
CCGrid '11
62
IB Transport Services
Service Type
Connection
Oriented
Acknowledged
Transport
Reliable Connection
Yes
Yes
IBA
Unreliable Connection
Yes
No
IBA
Reliable Datagram
No
Yes
IBA
Unreliable Datagram
No
No
IBA
RAW Datagram
No
No
Raw
• Each transport service can have zero or more QPs
associated with it
– E.g., you can have four QPs based on RC and one QP based on UD
CCGrid '11
63
Trade-offs in Different Transport Types
Attribute
Scalability
(M processes, N
nodes)
Reliable
Connection
M2N QPs
per HCA
Reliable
Datagram
M QPs
per HCA
eXtended
Reliable
Connection
Unreliable
Connection
Unreliable
Datagram
MN QPs
per HCA
M2N QPs
per HCA
M QPs
per HCA
Reliability
Corrupt
data
detected
Data delivered exactly once
Data Order
Guarantees
One source to
multiple
destinations
Error
Recovery
CCGrid '11
1 QP
per HCA
Yes
Data
Delivery
Guarantee
Data Loss
Detected
Raw
Datagram
Per connection
Per connection
No guarantees
Unordered,
duplicate data
detected
Yes
Errors (retransmissions, alternate path, etc.)
handled by transport layer. Client only involved in
handling fatal errors (links broken, protection
violation, etc.)
Packets with
errors and
sequence
errors are
reported to
responder
No
No
No
No
None
None
64
Transport Layer Capabilities
• Data Segmentation
• Transaction Ordering
• Message-level Flow Control
• Static Rate Control and Auto-negotiation
CCGrid '11
65
Data Segmentation
• IB transport layer provides a message-level communication
granularity, not byte-level (unlike TCP)
• Application can hand over a large message
– Network adapter segments it to MTU sized packets
– Single notification when the entire message is transmitted or
received (not per packet)
• Reduced host overhead to send/receive messages
– Depends on the number of messages, not the number of bytes
CCGrid '11
66
Transaction Ordering
• IB follows a strong transaction ordering for RC
• Sender network adapter transmits messages in the order
in which WQEs were posted
• Each QP utilizes a single LID
– All WQEs posted on same QP take the same path
– All packets are received by the receiver in the same order
– All receive WQEs are completed in the order in which they were
posted
CCGrid '11
67
Message-level Flow-Control
• Also called as End-to-end Flow-control
– Does not depend on the number of network hops
• Separate from Link-level Flow-Control
– Link-level flow-control only relies on the number of bytes being
transmitted, not the number of messages
– Message-level flow-control only relies on the number of messages
transferred, not the number of bytes
• If 5 receive WQEs are posted, the sender can send 5
messages (can post 5 send WQEs)
– If the sent messages are larger than what the receive buffers are
posted, flow-control cannot handle it
CCGrid '11
68
Static Rate Control and Auto-Negotiation
• IB allows link rates to be statically changed
– On a 4X link, we can set data to be sent at 1X
– For heterogeneous links, rate can be set to the lowest link rate
– Useful for low-priority traffic
• Auto-negotiation also available
– E.g., if you connect a 4X adapter to a 1X switch, data is
automatically sent at 1X rate
• Only fixed settings available
– Cannot set rate requirement to 3.16 Gbps, for example
CCGrid '11
69
IB Overview
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
• Communication Model
• Memory registration and protection
• Channel and memory semantics
– Novel Features
• Hardware Protocol Offload
– Link, network and transport layer features
– Subnet Management and Services
CCGrid '11
70
Concepts in IB Management
• Agents
– Processes or hardware units running on each adapter, switch,
router (everything on the network)
– Provide capability to query and set parameters
• Managers
– Make high-level decisions and implement it on the network fabric
using the agents
• Messaging schemes
– Used for interactions between the manager and agents (or
between agents)
• Messages
CCGrid '11
71
Subnet Manager
Inactive
Link
Multicast
Setup
Switch
Compute
Node
Active
Inactive
Links
Multicast Join
Multicast
Setup
Multicast Join
Subnet
Manager
CCGrid '11
72
IB, HSE and their Convergence
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
– Novel Features
– Subnet Management and Services
• High-speed Ethernet Family
– Internet Wide Area RDMA Protocol (iWARP)
– Alternate vendor-specific protocol stacks
• InfiniBand/Ethernet Convergence Technologies
– Virtual Protocol Interconnect (VPI)
– (InfiniBand) RDMA over Ethernet (RoE)
– (InfiniBand) RDMA over Converged (Enhanced) Ethernet (RoCE)
CCGrid '11
73
HSE Overview
• High-speed Ethernet Family
– Internet Wide-Area RDMA Protocol (iWARP)
• Architecture and Components
• Features
– Out-of-order data placement
– Dynamic and Fine-grained Data Rate control
– Multipathing using VLANs
• Existing Implementations of HSE/iWARP
– Alternate Vendor-specific Stacks
• MX over Ethernet (for Myricom 10GE adapters)
• Datagram Bypass Layer (for Myricom 10GE adapters)
• Solarflare OpenOnload (for Solarflare 10GE adapters)
CCGrid '11
74
IB and HSE RDMA Models: Commonalities and
Differences
IB
iWARP/HSE
Hardware Acceleration
Supported
Supported
RDMA
Supported
Supported
Atomic Operations
Supported
Not supported
Multicast
Supported
Supported
Congestion Control
Supported
Supported
Data Placement
Ordered
Out-of-order
Data Rate-control
Static and Coarse-grained
Dynamic and Fine-grained
QoS
Prioritization
Prioritization and
Fixed Bandwidth QoS
Multipathing
Using DLIDs
Using VLANs
CCGrid '11
75
iWARP Architecture and Components
iWARP Offload Engines
• RDMA Protocol (RDMAP)
– Feature-rich interface
Application or Library
User
– Security Management
RDMAP
• Remote Direct Data Placement (RDDP)
RDDP
– Data Placement and Delivery
MPA
SCTP
TCP
Hardware
IP
Device Driver
Network Adapter
(e.g., 10GigE)
– Multi Stream Semantics
– Connection Management
• Marker PDU Aligned (MPA)
– Middle Box Fragmentation
– Data Integrity (CRC)
(Courtesy iWARP Specification)
CCGrid '11
76
HSE Overview
• High-speed Ethernet Family
– Internet Wide-Area RDMA Protocol (iWARP)
• Architecture and Components
• Features
– Out-of-order data placement
– Dynamic and Fine-grained Data Rate control
• Existing Implementations of HSE/iWARP
– Alternate Vendor-specific Stacks
• MX over Ethernet (for Myricom 10GE adapters)
• Datagram Bypass Layer (for Myricom 10GE adapters)
• Solarflare OpenOnload (for Solarflare 10GE adapters)
CCGrid '11
77
Decoupled Data Placement and Data Delivery
• Place data as it arrives, whether in or out-of-order
• If data is out-of-order, place it at the appropriate offset
• Issues from the application’s perspective:
– Second half of the message has been placed does not mean that
the first half of the message has arrived as well
– If one message has been placed, it does not mean that that the
previous messages have been placed
• Issues from protocol stack’s perspective
– The receiver network stack has to understand each frame of data
• If the frame is unchanged during transmission, this is easy!
– The MPA protocol layer adds appropriate information at regular
intervals to allow the receiver to identify fragmented frames
CCGrid '11
78
Dynamic and Fine-grained Rate Control
• Part of the Ethernet standard, not iWARP
– Network vendors use a separate interface to support it
• Dynamic bandwidth allocation to flows based on interval
between two packets in a flow
– E.g., one stall for every packet sent on a 10 Gbps network refers to
a bandwidth allocation of 5 Gbps
– Complicated because of TCP windowing behavior
• Important for high-latency/high-bandwidth networks
– Large windows exposed on the receiver side
– Receiver overflow controlled through rate control
CCGrid '11
79
Prioritization and Fixed Bandwidth QoS
• Can allow for simple prioritization:
– E.g., connection 1 performs better than connection 2
– 8 classes provided (a connection can be in any class)
• Similar to SLs in InfiniBand
– Two priority classes for high-priority traffic
• E.g., management traffic or your favorite application
• Or can allow for specific bandwidth requests:
– E.g., can request for 3.62 Gbps bandwidth
– Packet pacing and stalls used to achieve this
• Query functionality to find out “remaining bandwidth”
CCGrid '11
80
HSE Overview
• High-speed Ethernet Family
– Internet Wide-Area RDMA Protocol (iWARP)
• Architecture and Components
• Features
– Out-of-order data placement
– Dynamic and Fine-grained Data Rate control
• Existing Implementations of HSE/iWARP
– Alternate Vendor-specific Stacks
• MX over Ethernet (for Myricom 10GE adapters)
• Datagram Bypass Layer (for Myricom 10GE adapters)
• Solarflare OpenOnload (for Solarflare 10GE adapters)
CCGrid '11
81
Software iWARP based Compatibility
TOE
Cluster
Regular Ethernet
Cluster
Wide
Area
Network
iWARP
Cluster
• Regular Ethernet adapters and
TOEs are fully compatible
• Compatibility with iWARP
required
• Software iWARP emulates the
functionality of iWARP on the
host
– Fully compatible with hardware
iWARP
– Internally utilizes host TCP/IP stack
Distributed Cluster
Environment
CCGrid '11
82
Different iWARP Implementations
OSU, OSC, IBM
Application
Application
OSU, ANL
Chelsio, NetEffect (Intel)
Application
Application
High Performance Sockets
User-level iWARP
Kernel-level
iWARP
Sockets
Sockets
TCP (Modified with MPA)
TCP
Sockets
High Performance Sockets
Software
iWARP
TCP
TCP
IP
IP
IP
IP
Device Driver
Device Driver
Sockets
Device Driver
Device Driver
Offloaded TCP
Offloaded iWARP
Offloaded TCP
Network Adapter
Network Adapter
Regular Ethernet Adapters
CCGrid '11
Offloaded IP
Network Adapter
TCP Offload Engines
Offloaded IP
Network Adapter
iWARP compliant
Adapters
83
HSE Overview
• High-speed Ethernet Family
– Internet Wide-Area RDMA Protocol (iWARP)
• Architecture and Components
• Features
– Out-of-order data placement
– Dynamic and Fine-grained Data Rate control
– Multipathing using VLANs
• Existing Implementations of HSE/iWARP
– Alternate Vendor-specific Stacks
• MX over Ethernet (for Myricom 10GE adapters)
• Datagram Bypass Layer (for Myricom 10GE adapters)
• Solarflare OpenOnload (for Solarflare 10GE adapters)
CCGrid '11
84
Myrinet Express (MX)
• Proprietary communication layer developed by Myricom for
their Myrinet adapters
– Third generation communication layer (after FM and GM)
– Supports Myrinet-2000 and the newer Myri-10G adapters
• Low-level “MPI-like” messaging layer
– Almost one-to-one match with MPI semantics (including connectionless model, implicit memory registration and tag matching)
– Later versions added some more advanced communication methods
such as RDMA to support other programming models such as ARMCI
(low-level runtime for the Global Arrays PGAS library)
• Open-MX
– New open-source implementation of the MX interface for nonMyrinet adapters from INRIA, France
CCGrid '11
85
Datagram Bypass Layer (DBL)
• Another proprietary communication layer developed by
Myricom
– Compatible with regular UDP sockets (embraces and extends)
– Idea is to bypass the kernel stack and give UDP applications direct
access to the network adapter
• High performance and low-jitter
• Primary motivation: Financial market applications (e.g.,
stock market)
– Applications prefer unreliable communication
– Timeliness is more important than reliability
• This stack is covered by NDA; more details can be
requested from Myricom
CCGrid '11
86
Solarflare Communications: OpenOnload Stack
•
•
HPC Networking Stack provides many
performance benefits, but has limitations
for certain types of scenarios, especially
where applications tend to fork(), exec()
and need asynchronous advancement (per
application)
Solarflare approach:
Typical Commodity Networking Stack

Network hardware provides user-safe
interface to route packets directly to apps
based on flow information in headers

Protocol processing can happen in both
kernel and user space

Protocol state shared between app and
kernel using shared memory
Typical HPC Networking Stack
Solarflare approach to networking stack
Courtesy Solarflare communications (www.openonload.org/openonload-google-talk.pdf)
CCGrid '11
87
IB, HSE and their Convergence
• InfiniBand
– Architecture and Basic Hardware Components
– Communication Model and Semantics
– Novel Features
– Subnet Management and Services
• High-speed Ethernet Family
– Internet Wide Area RDMA Protocol (iWARP)
– Alternate vendor-specific protocol stacks
• InfiniBand/Ethernet Convergence Technologies
– Virtual Protocol Interconnect (VPI)
– (InfiniBand) RDMA over Ethernet (RoE)
– (InfiniBand) RDMA over Converged (Enhanced) Ethernet (RoCE)
CCGrid '11
88
Virtual Protocol Interconnect (VPI)
• Single network firmware to support
both IB and Ethernet
Applications
IB Verbs
Hardware
Sockets
IB Transport
Layer
TCP
IB Network
Layer
IP
TCP/IP
support
IB Link Layer
IB Port
CCGrid '11
Ethernet
Link Layer
Ethernet Port
• Autosensing of layer-2 protocol
– Can be configured to automatically
work with either IB or Ethernet
networks
• Multi-port adapters can use one
port on IB and another on Ethernet
• Multiple use modes:
– Datacenters with IB inside the
cluster and Ethernet outside
– Clusters with IB network and
Ethernet management
89
(InfiniBand) RDMA over Ethernet (IBoE or RoE)
• Native convergence of IB network and transport
layers with Ethernet link layer
• IB packets encapsulated in Ethernet frames
Application
IB Verbs
IB Transport
• IB network layer already uses IPv6 frames
• Pros:
– Works natively in Ethernet environments (entire
Ethernet management ecosystem is available)
– Has all the benefits of IB verbs
IB Network
Ethernet
Hardware
• Cons:
– Network bandwidth might be limited to Ethernet
switches: 10GE switches available; 40GE yet to
arrive; 32 Gbps IB available
– Some IB native link-layer features are optional in
(regular) Ethernet
• Approved by OFA board to be included into OFED
CCGrid '11
90
(InfiniBand) RDMA over Converged (Enhanced) Ethernet
(RoCE)
• Very similar to IB over Ethernet
– Often used interchangeably with IBoE
Application
IB Verbs
IB Transport
IB Network
CE
– Can be used to explicitly specify link layer is
Converged (Enhanced) Ethernet (CE)
• Pros:
– Works natively in Ethernet environments (entire
Ethernet management ecosystem is available)
– Has all the benefits of IB verbs
– CE is very similar to the link layer of native IB, so
there are no missing features
• Cons:
Hardware
CCGrid '11
– Network bandwidth might be limited to Ethernet
switches: 10GE switches available; 40GE yet to
arrive; 32 Gbps IB available
91
IB and HSE: Feature Comparison
IB
iWARP/HSE
RoE
RoCE
Hardware Acceleration
Yes
Yes
Yes
Yes
RDMA
Yes
Yes
Yes
Yes
Congestion Control
Yes
Optional
Optional
Yes
Multipathing
Yes
Yes
Yes
Yes
Atomic Operations
Yes
No
Yes
Yes
Multicast
Optional
No
Optional
Optional
Data Placement
Ordered
Out-of-order
Ordered
Ordered
Prioritization
Optional
Optional
Optional
Yes
Fixed BW QoS (ETS)
No
Optional
Optional
Yes
Ethernet Compatibility
No
Yes
Yes
Yes
TCP/IP Compatibility
Yes
(using IPoIB)
Yes
Yes
(using IPoIB)
Yes
(using IPoIB)
CCGrid '11
92
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
93
IB Hardware Products
• Many IB vendors: Mellanox+Voltaire and Qlogic
– Aligned with many server vendors: Intel, IBM, SUN, Dell
– And many integrators: Appro, Advanced Clustering, Microway
• Broadly two kinds of adapters
– Offloading (Mellanox) and Onloading (Qlogic)
• Adapters with different interfaces:
– Dual port 4X with PCI-X (64 bit/133 MHz), PCIe x8, PCIe 2.0 and HT
• MemFree Adapter
– No memory on HCA  Uses System memory (through PCIe)
– Good for LOM designs (Tyan S2935, Supermicro 6015T-INFB)
• Different speeds
– SDR (8 Gbps), DDR (16 Gbps) and QDR (32 Gbps)
• Some 12X SDR adapters exist as well (24 Gbps each way)
• New ConnectX-2 adapter from Mellanox supports offload for
collectives (Barrier, Broadcast, etc.)
CCGrid '11
94
Tyan Thunder S2935 Board
(Courtesy Tyan)
Similar boards from Supermicro with LOM features are also available
CCGrid '11
95
IB Hardware Products (contd.)
•
Customized adapters to work with IB switches
– Cray XD1 (formerly by Octigabay), Cray CX1
•
Switches:
– 4X SDR and DDR (8-288 ports); 12X SDR (small sizes)
– 3456-port “Magnum” switch from SUN  used at TACC
• 72-port “nano magnum”
– 36-port Mellanox InfiniScale IV QDR switch silicon in 2008
• Up to 648-port QDR switch by Mellanox and SUN
• Some internal ports are 96 Gbps (12X QDR)
– IB switch silicon from Qlogic introduced at SC ’08
• Up to 846-port QDR switch by Qlogic
– New FDR (56 Gbps) switch silicon (Bridge-X) has been announced by
Mellanox in May ‘11
•
Switch Routers with Gateways
– IB-to-FC; IB-to-IP
CCGrid '11
96
10G, 40G and 100G Ethernet Products
• 10GE adapters: Intel, Myricom, Mellanox (ConnectX)
• 10GE/iWARP adapters: Chelsio, NetEffect (now owned by Intel)
• 40GE adapters: Mellanox ConnectX2-EN 40G
• 10GE switches
– Fulcrum Microsystems
• Low latency switch based on 24-port silicon
• FM4000 switch with IP routing, and TCP/UDP support
– Fujitsu, Myricom (512 ports), Force10, Cisco, Arista (formerly Arastra)
• 40GE and 100GE switches
– Nortel Networks
• 10GE downlinks with 40GE and 100GE uplinks
– Broadcom has announced 40GE switch in early 2010
CCGrid '11
97
Products Providing IB and HSE Convergence
• Mellanox ConnectX Adapter
• Supports IB and HSE convergence
• Ports can be configured to support IB or HSE
• Support for VPI and RoCE
– 8 Gbps (SDR), 16Gbps (DDR) and 32Gbps (QDR) rates available
for IB
– 10GE rate available for RoCE
– 40GE rate for RoCE is expected to be available in near future
CCGrid '11
98
Software Convergence with OpenFabrics
• Open source organization (formerly OpenIB)
– www.openfabrics.org
• Incorporates both IB and iWARP in a unified manner
– Support for Linux and Windows
– Design of complete stack with `best of breed’ components
• Gen1
• Gen2 (current focus)
• Users can download the entire stack and run
– Latest release is OFED 1.5.3
– OFED 1.6 is underway
CCGrid '11
99
OpenFabrics Stack with Unified Verbs Interface
Verbs Interface
(libibverbs)
Mellanox
(libmthca)
QLogic
(libipathverbs)
IBM
(libehca)
Chelsio
(libcxgb3)
User Level
Mellanox
(ib_mthca)
QLogic
(ib_ipath)
Chelsio
(ib_cxgb3)
IBM
(ib_ehca)
Kernel Level
Mellanox
Adapters
CCGrid '11
QLogic
Adapters
IBM
Adapters
Chelsio
Adapters
100
OpenFabrics on Convergent IB/HSE
• For IBoE and RoCE, the upper-level
stacks remain completely
unchanged
Verbs Interface
(libibverbs)
• Within the hardware:
ConnectX
(libmlx4)
User Level
ConnectX
(ib_mlx4)
Kernel Level
ConnectX
Adapters
– Transport and network layers remain
completely unchanged
– Both IB and Ethernet (or CEE) link
layers are supported on the network
adapter
• Note: The OpenFabrics stack is not
valid for the Ethernet path in VPI
HSE
CCGrid '11
IB
– That still uses sockets and TCP/IP
101
OpenFabrics Software Stack
Application
Level
Diag Open
Tools
SM
IP Based
App
Access
Sockets
Based
Access
User Level
MAD API
User
APIs
Clustered
DB Access
Access to
File
Systems
UDAPL
InfiniBand
OpenFabrics User Level
User Space
Verbs / API
iWARP R-NIC
SDP Lib
Kernel Space
Kernel bypass
IPoIB
Provider
SDP
SRP
iSER
RDS
NFS-RDMA
RPC
Cluster
File Sys
Connection Manager
Abstraction (CMA)
SA
MAD
Client
InfiniBand
Hardware
Specific Driver
SMA
Connection
Manager
Connection
Manager
OpenFabrics Kernel Level Verbs / API
iWARP R-NIC
Kernel bypass
Upper
Layer
Protocol
Mid-Layer
Block
Storage
Access
Various
MPIs
Hardware Specific
Driver
SA
Subnet Administrator
MAD
Management Datagram
SMA
Subnet Manager Agent
PMA
Performance Manager
Agent
IPoIB
IP over InfiniBand
SDP
Sockets Direct Protocol
SRP
SCSI RDMA Protocol
(Initiator)
iSER
iSCSI RDMA Protocol
(Initiator)
RDS
Reliable Datagram Service
UDAPL
User Direct Access
Programming Lib
HCA
Host Channel Adapter
R-NIC
RDMA NIC
Key
Common
InfiniBand
Hardware
CCGrid '11
InfiniBand HCA
iWARP R-NIC
iWARP
Apps &
Access
Methods
for using
OF Stack
102
InfiniBand in the Top500
Percentage share of InfiniBand is steadily increasing
CCGrid '11
103
InfiniBand in the Top500 (Nov. 2010)
Performance
Number of Systems
0%
0%
1%
1%
0% 0% 0%
4%
0%
0%
0%
0%
1% 0%
6%
0%
9%
25%
45%
21%
43%
44%
Gigabit Ethernet
InfiniBand
Proprietary
Gigabit Ethernet
Infiniband
Proprietary
Myrinet
Quadrics
Mixed
Myrinet
Quadrics
Mixed
NUMAlink
SP Switch
Cray Interconnect
NUMAlink
SP Switch
Cray Interconnect
Fat Tree
Custom
Fat Tree
Custom
CCGrid '11
104
InfiniBand System Efficiency in the Top500 List
Computer Cluster Efficiency Comparison
100
90
80
Efficiency (%)
70
60
50
40
30
20
10
0
0
50
100
150
200
250
300
350
400
450
500
Top 500 Systems
IB-CPU
CCGrid '11
IB-GPU/Cell
GigE
10GigE
IBM-BlueGene
Cray
105
Large-scale InfiniBand Installations
• 214 IB Clusters (42.8%) in the Nov ‘10 Top500 list (http://www.top500.org)
• Installations in the Top 30 (13 systems):
120,640 cores (Nebulae) in China (3rd)
15,120 cores (Loewe) in Germany (22nd)
73,278 cores (Tsubame-2.0) at Japan (4th)
26,304 cores (Juropa) in Germany (23rd)
138,368 cores (Tera-100) at France (6th)
26,232 cores (Tachyonll) in South Korea (24th)
122,400 cores (RoadRunner) at LANL (7th)
23,040 cores (Jade) at GENCI (27th)
81,920 cores (Pleiades) at NASA Ames (11th)
33,120 cores (Mole-8.5) in China (28th)
42,440 cores (Red Sky) at Sandia (14th)
More are getting installed !
62,976 cores (Ranger) at TACC (15th)
35,360 cores (Lomonosov) in Russia (17th)
CCGrid '11
106
HSE Scientific Computing Installations
• HSE compute systems with ranking in the Nov 2010 Top500 list
– 8,856-core installation in Purdue with ConnectX-EN 10GigE (#126)
– 7,944-core installation in Purdue with 10GigE Chelsio/iWARP (#147)
– 6,828-core installation in Germany (#166)
– 6,144-core installation in Germany (#214)
– 6,144-core installation in Germany (#215)
– 7,040-core installation at the Amazon EC2 Cluster (#231)
– 4,000-core installation at HHMI (#349)
• Other small clusters
– 640-core installation in University of Heidelberg, Germany
– 512-core installation at Sandia National Laboratory (SNL) with
Chelsio/iWARP and Woven Systems switch
– 256-core installation at Argonne National Lab with Myri-10G
• Integrated Systems
– BG/P uses 10GE for I/O (ranks 9, 13, 16, and 34 in the Top 50)
CCGrid '11
107
Other HSE Installations
• HSE has most of its popularity in enterprise computing and
other non-scientific markets including Wide-area
networking
• Example Enterprise Computing Domains
– Enterprise Datacenters (HP, Intel)
– Animation firms (e.g., Universal Studios (“The Hulk”), 20th Century
Fox (“Avatar”), and many new movies using 10GE)
– Amazon’s HPC cloud offering uses 10GE internally
– Heavily used in financial markets (users are typically undisclosed)
• Many Network-attached Storage devices come integrated
with 10GE network adapters
• ESnet to install $62M 100GE infrastructure for US DOE
CCGrid '11
108
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
109
Modern Interconnects and Protocols
Application
Application
Interface
Sockets
Kernel
Space
TCP/IP
Verbs
TCP/IP
Protocol
Implementation
SDP
RDMA
Hardware
Offload
RDMA
User
space
Ethernet
Driver
IPoIB
Network
Adapter
1/10 GigE
Adapter
InfiniBand
Adapter
10 GigE
Adapter
InfiniBand
Adapter
InfiniBand
Adapter
Network
Switch
Ethernet
Switch
InfiniBand
Switch
10 GigE
Switch
InfiniBand
Switch
InfiniBand
Switch
10 GigE-TOE
SDP
IB Verbs
1/10 GigE
IPoIB
110
Case Studies
• Low-level Network Performance
• Clusters with Message Passing Interface (MPI)
• Datacenters with Sockets Direct Protocol (SDP) and TCP/IP
(IPoIB)
• InfiniBand in WAN and Grid-FTP
• Cloud Computing: Hadoop and Memcached
CCGrid '11
111
Low-level Latency Measurements
30
Small Messages
10000
VPI-IB
25
9000
Native IB
8000
7000
RoCE
Latency (us)
Latency (us)
VPI-Eth
20
15
10
Large Messages
6000
5000
4000
3000
2000
5
1000
0
0
Message Size (bytes)
Message Size (bytes)
ConnectX-DDR: 2.4 GHz Quad-core (Nehalem) Intel with IB and 10GE switches
RoCE has a slight overhead compared to native IB because it operates at a slower clock rate (required to support
only a 10Gbps link for Ethernet, as compared to a 32Gbps link for IB)
CCGrid '11
112
Low-level Uni-directional Bandwidth Measurements
Uni-directional Bandwidth
1600
1400
Bandwidth (MBps)
1200
1000
800
600
VPI-IB
400
Native IB
VPI-Eth
200
RoCE
0
Message Size (bytes)
ConnectX-DDR: 2.4 GHz Quad-core (Nehalem) Intel with IB and 10GE switches
CCGrid '11
113
Case Studies
• Low-level Network Performance
• Clusters with Message Passing Interface (MPI)
• Datacenters with Sockets Direct Protocol (SDP) and TCP/IP
(IPoIB)
• InfiniBand in WAN and Grid-FTP
• Cloud Computing: Hadoop and Memcached
CCGrid '11
114
MVAPICH/MVAPICH2 Software
• High Performance MPI Library for IB and HSE
– MVAPICH (MPI-1) and MVAPICH2 (MPI-2.2)
– Used by more than 1,550 organizations in 60 countries
– More than 66,000 downloads from OSU site directly
– Empowering many TOP500 clusters
• 11th ranked 81,920-core cluster (Pleiades) at NASA
• 15th ranked 62,976-core cluster (Ranger) at TACC
– Available with software stacks of many IB, HSE and server vendors
including Open Fabrics Enterprise Distribution (OFED) and Linux
Distros (RedHat and SuSE)
– http://mvapich.cse.ohio-state.edu
CCGrid '11
115
One-way Latency: MPI over IB
6
Small Message Latency
400
350
5
300
MVAPICH-Qlogic-DDR
MVAPICH-Qlogic-QDR-PCIe2
MVAPICH-ConnectX-DDR
Latency (us)
4
Latency (us)
Large Message Latency
3
2.17
1.96
2
1.60
1.54
1
250
MVAPICH-ConnectX-QDR-PCIe2
200
150
100
50
0
0
Message Size (bytes)
Message Size (bytes)
All numbers taken on 2.4 GHz Quad-core (Nehalem) Intel with IB switch
CCGrid '11
116
Bandwidth: MPI over IB
3500
Unidirectional Bandwidth
7000
3023.7
MVAPICH-Qlogic-DDR
3000
MillionBytes/sec
2665.6
1901.1
2000
1500
1553.2
1000
MillionBytes/sec
6000
2500
5000
5835.7
MVAPICH-Qlogic-QDR-PCIe2
MVAPICH-ConnectX-DDR
MVAPICH-ConnectX-QDR-PCIe2
3642.8
4000
3000
3244.1
2990.1
2000
500
1000
0
0
Message Size (bytes)
Bidirectional Bandwidth
Message Size (bytes)
All numbers taken on 2.4 GHz Quad-core (Nehalem) Intel with IB switch
CCGrid '11
117
One-way Latency: MPI over iWARP
One-way Latency
90
Chelsio (TCP/IP)
80
Chelsio (iWARP)
70
Intel-NetEffect (TCP/IP)
Latency (us)
60
Intel-NetEffect (iWARP)
50
40
30
25.43
20
15.47
10
6.88
0
6.25
Message Size (bytes)
2.4 GHz Quad-core Intel (Clovertown) with 10GE (Fulcrum) Switch
CCGrid '11
118
Bandwidth: MPI over iWARP
Unidirectional Bandwidth
2500
1400
Chelsio (TCP/IP)
1245.0
2260.8
Chelsio (iWARP)
1200
2000
1169.7
1000
839.8
800
600
373.3
400
Intel-NetEffect (TCP/IP)
Intel-NetEffect (iWARP)
MillionBytes/sec
MillionBytes/sec
Bidirectional Bandwidth
1500
855.3
1000
500
200
0
2029.5
647.1
0
Message Size (bytes)
Message Size (bytes)
2.33 GHz Quad-core Intel (Clovertown) with 10GE (Fulcrum) Switch
CCGrid '11
119
Convergent Technologies: MPI Latency
Small Messages
60
18000
50
16000
14000
37.65
VPI-IB
VPI-Eth
RoCE
10000
30
20
10
Native IB
12000
Latency (us)
Latency (us)
40
Large Messages
20000
8000
6000
4000
3.6
2.2
1.8
2000
0
0
Message Size (bytes)
Message Size (bytes)
ConnectX-DDR: 2.4 GHz Quad-core (Nehalem) Intel with IB and 10GE switches
CCGrid '11
120
Convergent Technologies:
MPI Uni- and Bi-directional Bandwidth
1600
Uni-directional Bandwidth
3500
1518.1
Bi-directional Bandwidth
1400
VPI-IB
1200
VPI-Eth
1518.1
1115.7
RoCE
1000
800
600
404.1
400
2825.6
2500
2114.9
2000
1500
1000
200
500
0
0
Message Size (bytes)
2880.4
3000
Bandwidth (MBps)
Bandwidth (MBps)
Native IB
1085.5
Message Size (bytes)
ConnectX-DDR: 2.4 GHz Quad-core (Nehalem) Intel with IB and 10GE switches
CCGrid '11
121
Case Studies
• Low-level Network Performance
• Clusters with Message Passing Interface (MPI)
• Datacenters with Sockets Direct Protocol (SDP) and
TCP/IP (IPoIB)
• InfiniBand in WAN and Grid-FTP
• Cloud Computing: Hadoop and Memcached
CCGrid '11
122
IPoIB vs. SDP Architectural Models
Traditional Model
Possible SDP Model
Sockets App
Sockets Application
Sockets API
Sockets API
SDP
User
OS Modules
InfiniBand
Hardware
User
TCP/IP Sockets
Provider
Kernel
TCP/IP Transport
Driver
IPoIB Driver
InfiniBand CA
Kernel
TCP/IP Sockets
Provider
TCP/IP Transport
Driver
IPoIB Driver
Sockets Direct
Protocol
Kernel
Bypass
RDMA
Semantics
InfiniBand CA
(Source: InfiniBand Trade Association)
CCGrid '11
123
SDP vs. IPoIB (IB QDR)
Bidir Bandwidth (MBps)
Bandwidth (MBps)
2000
IPoIB-RC
IPoIB-UD
SDP
1500
1000
500
0
2
8
32
128 512
2K
8K
32K
4000
3500
3000
2500
2000
1500
1000
500
0
2
8
32
128 512
2K
8K
32K
30
Latency (us)
25
SDP enables high bandwidth
(up to 15 Gbps),
low latency (6.6 µs)
20
15
10
5
0
2
4
CCGrid '11
8
16 32 64 128 256 512 1K 2K
124
Case Studies
• Low-level Network Performance
• Clusters with Message Passing Interface (MPI)
• Datacenters with Sockets Direct Protocol (SDP) and TCP/IP
(IPoIB)
• InfiniBand in WAN and Grid-FTP
• Cloud Computing: Hadoop and Memcached
CCGrid '11
125
IB on the WAN
• Option 1: Layer-1 Optical networks
– IB standard specifies link, network and transport layers
– Can use any layer-1 (though the standard says copper and optical)
• Option 2: Link Layer Conversion Techniques
– InfiniBand-to-Ethernet conversion at the link layer: switches
available from multiple companies (e.g., Obsidian)
• Technically, it’s not conversion; it’s just tunneling (L2TP)
– InfiniBand’s network layer is IPv6 compliant
CCGrid '11
126
UltraScience Net: Experimental Research Network Testbed
Since 2005
This and the following IB WAN slides are courtesy Dr. Nagi Rao (ORNL)
Features
• End-to-end guaranteed bandwidth channels
• Dynamic, in-advance, reservation and provisioning of fractional/full lambdas
• Secure control-plane for signaling
• Peering with ESnet, National Science Foundation CHEETAH, and other networks
CCGrid '11
127
IB-WAN Connectivity with Obsidian Switches
• Supports SONET OC-192 or
10GE LAN-PHY/WAN-PHY
• Idea is to make remote storage
“appear” local
• IB-WAN switch does frame
conversion
– IB standard allows per-hop creditbased flow control
– IB-WAN switch uses large internal
buffers to allow enough credits to
fill the wire
CCGrid '11
CPU
CPU
Host bus
System
Controller
System
Memory
HCA
IB switch
Storage
IB WAN
Wide-area
SONET/10GE
128
InfiniBand Over SONET: Obsidian Longbows RDMA
throughput measurements over USN
Quad-core
Dual socket
ORNL
longbow
IB/S
Linux
host
ORNL
CDCI
IB 4x
Linux
host
longbow
IB/S
OC192
700 miles
3300 miles
Chicago
CDCI
Seattle
CDCI
4300 miles
Sunnyvale
CDCI
IB 4x: 8Gbps (full speed)
Host-to-host local switch:7.5Gbps
ORNL loop -0.2 mile: 7.48Gbps
ORNL-Chicago loop – 1400 miles: 7.47Gbps
Hosts:
Dual-socket Quad-core 2 GHz AMD
Opteron, 4GB memory, 8-lane PCIExpress slot, Dual-port Voltaire 4x
SDR HCA
ORNL- Chicago - Seattle loop – 6600 miles: 7.37Gbps
ORNL – Chicago – Seattle - Sunnyvale loop – 8600 miles: 7.34Gbps
CCGrid '11
129
IB over 10GE LAN-PHY and WAN-PHY
Quad-core
Dual socket
ORNL
longbow
IB/S
Linux
host
ORNL
CDCI
IB 4x
Linux
host
longbow
IB/S
OC192
700 miles
3300 miles
Chicago
CDCI
Seattle
CDCI
4300 miles
Sunnyvale
CDCI
Sunnyvale
E300
Chicago
E300
ORNL loop -0.2 mile: 7.5Gbps
OC 192
10GE WAN PHY
ORNL-Chicago loop – 1400 miles: 7.49Gbps
ORNL- Chicago - Seattle loop – 6600 miles: 7.39Gbps
ORNL – Chicago – Seattle - Sunnyvale loop – 8600 miles: 7.36Gbps
CCGrid '11
130
MPI over IB-WAN: Obsidian Routers
Obsidian WAN Router
Obsidian WAN Router
(Variable Delay)
Cluster A
MPI Bidirectional Bandwidth
(Variable Delay)
WAN Link
Cluster B
Delay (us)
Distance
(km)
10
2
100
20
1000
200
10000
2000
Impact of Encryption on Message Rate (Delay 0 ms)
Hardware encryption has no impact on performance for less communicating streams
S. Narravula, H. Subramoni, P. Lai, R. Noronha and D. K. Panda, Performance of HPC Middleware over
InfiniBand WAN, Int'l Conference on Parallel Processing (ICPP '08), September 2008.
CCGrid '11
131
Communication Options in Grid
GridFTP
High Performance Computing Applications
Globus XIO Framework
IB Verbs
IPoIB
RoCE
TCP/IP
Obsidian
Routers
10 GigE Network
•
•
•
Multiple options exist to perform data transfer on Grid
Globus-XIO framework currently does not support IB natively
We create the Globus-XIO ADTS driver and add native IB support
to GridFTP
CCGrid '11
132
Globus-XIO Framework with ADTS Driver
Globus XIO Driver #1
Globus XIO
Interface
User
Globus XIO Driver #n
Data
Connection
Management
Globus-XIO
ADTS Driver
Persistent
Session
Management
Buffer &
File
Management
File System
Data Transport Interface
Zero Copy Channel
Flow Control
Memory Registration
Modern WAN
Interconnects
CCGrid '11
InfiniBand / RoCE
10GigE/iWARP
Network
133
ADTS Driver
1200
1000
800
600
400
200
0
Bandwidth (MBps)
Bandwidth (MBps)
Performance of Memory Based
Data Transfer
0
2 MB
•
•
•
CCGrid '11
10
100
Network Delay (us)
8 MB
32 MB
1000
64 MB
UDT Driver
1200
1000
800
600
400
200
0
0
2 MB
10
100
Network Delay (us)
8 MB
32 MB
1000
64 MB
Performance numbers obtained while transferring 128 GB of
aggregate data in chunks of 256 MB files
ADTS based implementation is able to saturate the link
bandwidth
Best performance for ADTS obtained when performing data
transfer with a network buffer of size 32 MB
134
Synchronous Mode
400
Bandwidth (MBps)
Bandwidth (MBps)
Performance of Disk Based Data Transfer
300
200
100
0
0
10
100
Network Delay (us)
ADTS-8MB
ADTS-64MB
•
•
•
CCGrid '11
ADTS-16MB
IPoIB-64MB
1000
ADTS-32MB
Asynchronous Mode
400
300
200
100
0
0
10
100
Network Delay (us)
ADTS-8MB
ADTS-64MB
ADTS-16MB
IPoIB-64MB
1000
ADTS-32MB
Performance numbers obtained while transferring 128 GB of
aggregate data in chunks of 256 MB files
Predictable as well as better performance when Disk-IO
threads assist network thread (Asynchronous Mode)
Best performance for ADTS obtained with a circular buffer
with individual buffers of size 64 MB
135
Application Level Performance
Bandwidth (MBps)
300
250
200
150
100
50
0
CCSM
Ultra-Viz
Target Applications
ADTS
• Application performance for FTP get
operation for disk based transfers
• Community Climate System Model
(CCSM)
• Part of Earth System Grid Project
• Transfers 160 TB of total data in
chunks of 256 MB
• Network latency - 30 ms
• Ultra-Scale Visualization (Ultra-Viz)
• Transfers files of size 2.6 GB
• Network latency - 80 ms
IPoIB
The ADTS driver out performs the UDT driver using IPoIB by more than
100%
H. Subramoni, P. Lai, R. Kettimuthu and D. K. Panda, High Performance Data Transfer in
Grid Environment Using GridFTP over InfiniBand, Int'l Symposium on Cluster Computing and
the Grid (CCGrid), May 2010.
136
CCGrid '11
136
Case Studies
• Low-level Network Performance
• Clusters with Message Passing Interface (MPI)
• Datacenters with Sockets Direct Protocol (SDP) and TCP/IP
(IPoIB)
• InfiniBand in WAN and Grid-FTP
• Cloud Computing: Hadoop and Memcached
CCGrid '11
137
A New Approach towards OFA in Cloud
Current Cloud
Software Design
Current Approach
Towards OFA in Cloud
Application
Application
Our Approach
Towards OFA in Cloud
Application
Accelerated Sockets
Verbs Interface
Sockets
Verbs / Hardware
Offload
1/10 GigE
Network
10 GigE or InfiniBand
10 GigE or InfiniBand
• Sockets not designed for high-performance
– Stream semantics often mismatch for upper layers (Memcached, Hadoop)
– Zero-copy not available for non-blocking sockets (Memcached)
• Significant consolidation in cloud system software
– Hadoop and Memcached are developer facing APIs, not sockets
– Improving Hadoop and Memcached will benefit many applications immediately!
CCGrid '11
138
Memcached Design Using Verbs
Sockets
Client
1
2
1
RDMA
Client
2
Master
Thread
Sockets
Worker
Thread
Sockets
Worker
Thread
Shared
Data
Memory
Slabs
Items
Verbs
Worker
Thread
Verbs
Worker
Thread
…
• Server and client perform a negotiation protocol
– Master thread assigns clients to appropriate worker thread
• Once a client is assigned a verbs worker thread, it can communicate directly
and is “bound” to that thread
• All other Memcached data structures are shared among RDMA and Sockets
worker threads
CCGrid '11
139
Memcached Get Latency
250
350
300
200
Time (us)
Time (us)
250
150
100
SDP
200
IPoIB
150
OSU Design
100
1G
50
50
10G-TOE
0
0
1
1
2
4
8
16 32 64 128 256 512 1K 2K 4K
Message Size
Intel Clovertown Cluster (IB: DDR)
2
4
8 16 32 64 128 256 512 1K 2K 4K
Message Size
Intel Westmere Cluster (IB: QDR)
• Memcached Get latency
– 4 bytes – DDR: 6 us; QDR: 5 us
– 4K bytes -- DDR: 20 us; QDR:12 us
• Almost factor of four improvement over 10GE (TOE) for 4K
• We are in the process of evaluating iWARP on 10GE
CCGrid '11
140
Thousands of Transactions per second
(TPS)
Memcached Get TPS
700
2000
600
500
SDP
1800
10G - TOE
1600
1400
OSU Design
1200
400
SDP
IPoIB
OSU Design
1000
300
800
200
600
400
100
200
0
0
8 Clients
16 Clients
Intel Clovertown Cluster (IB: DDR)
8 Clients
16 Clients
Intel Westmere Cluster (IB: QDR)
• Memcached Get transactions per second for 4 bytes
– On IB DDR about 600K/s for 16 clients
– On IB QDR 1.9M/s for 16 clients
• Almost factor of six improvement over 10GE (TOE)
• We are in the process of evaluating iWARP on 10GE
CCGrid '11
141
Hadoop: Java Communication Benchmark
Bandwidth with C version
1400
1200
1000
1GE
1000
Bandwidth (MB/s)
Bandwidth (MB/s)
1200
Bandwidth Java Version
1400
800
600
400
200
IPoIB
SDP
800
10GE-TOE
600
SDP-NIO
400
200
0
0
Message Size (Bytes)
1
4
16
64
256
1K
4K
16K 64K 256K 1M
4M
Message Size (Bytes)
•
•
•
•
Sockets level ping-pong bandwidth test
Java performance depends on usage of NIO (allocateDirect)
C and Java versions of the benchmark have similar performance
HDFS does not use direct allocated blocks or NIO on DataNode
S. Sur, H. Wang, J. Huang, X. Ouyang and D. K. Panda “Can High-Performance
Interconnects Benefit Hadoop Distributed File System?”, MASVDC „10 in conjunction with
MICRO 2010, Atlanta, GA.
CCGrid '11
142
Hadoop: DFS IO Write Performance
Average Write Throughput (MB/sec)
90
Four Data Nodes
Using HDD and SSD
80
70
1GE with HDD
60
IGE with SSD
50
IPoIB with HDD
40
IPoIB with SSD
30
SDP with HDD
SDP with SSD
20
10GE-TOE with HDD
10
10GE-TOE with SSD
0
1
2
3
4
5
6
7
8
9
10
File Size(GB)
•
•
•
•
•
DFS IO included in Hadoop, measures sequential access throughput
We have two map tasks each writing to a file of increasing size (1-10GB)
Significant improvement with IPoIB, SDP and 10GigE
With SSD, performance improvement is almost seven or eight fold!
SSD benefits not seen without using high-performance interconnect!
• In-line with comment on Google keynote about I/O performance
CCGrid '11
143
Hadoop: RandomWriter Performance
700
Execution Time (sec)
600
1GE with HDD
500
IGE with SSD
400
IPoIB with HDD
IPoIB with SSD
300
SDP with HDD
200
SDP with SSD
10GE-TOE with HDD
100
10GE-TOE with SSD
0
2
4
Number of data nodes
• Each map generates 1GB of random binary data and writes to HDFS
• SSD improves execution time by 50% with 1GigE for two DataNodes
• For four DataNodes, benefits are observed only with HPC interconnect
• IPoIB, SDP and 10GigE can improve performance by 59% on four DataNodes
CCGrid '11
144
Hadoop Sort Benchmark
Execution Time (sec)
2500
2000
1GE with HDD
IGE with SSD
1500
IPoIB with HDD
IPoIB with SSD
1000
SDP with HDD
SDP with SSD
500
10GE-TOE with HDD
10GE-TOE with SSD
0
2
4
Number of data nodes
•
•
•
•
Sort: baseline benchmark for Hadoop
Sort phase: I/O bound; Reduce phase: communication bound
SSD improves performance by 28% using 1GigE with two DataNodes
Benefit of 50% on four DataNodes using SDP, IPoIB or 10GigE
CCGrid '11
145
Presentation Overview
• Introduction
• Why InfiniBand and High-speed Ethernet?
• Overview of IB, HSE, their Convergence and Features
• IB and HSE HW/SW Products and Installations
• Sample Case Studies and Performance Numbers
• Conclusions and Final Q&A
CCGrid '11
146
Concluding Remarks
• Presented network architectures & trends for Clusters,
Grid, Multi-tier Datacenters and Cloud Computing Systems
• Presented background and details of IB and HSE
– Highlighted the main features of IB and HSE and their convergence
– Gave an overview of IB and HSE hardware/software products
– Discussed sample performance numbers in designing various highend systems with IB and HSE
• IB and HSE are emerging as new architectures leading to a
new generation of networked computing systems, opening
many research issues needing novel solutions
CCGrid '11
147
Funding Acknowledgments
Funding Support by
Equipment Support by
CCGrid '11
148
Personnel Acknowledgments
Current Students
–
N. Dandapanthula (M.S.)
–
P. Balaji (Ph.D.)
–
R. Darbha (M.S.)
–
D. Buntinas (Ph.D.)
–
V. Dhanraj (M.S.)
–
S. Bhagvat (M.S.)
–
J. Huang (Ph.D.)
–
L. Chai (Ph.D.)
–
J. Jose (Ph.D.)
–
B. Chandrasekharan (M.S.)
–
K. Kandalla (Ph.D.)
–
T. Gangadharappa (M.S.)
–
M. Luo (Ph.D.)
–
K. Gopalakrishnan (M.S.)
–
V. Meshram (M.S.)
–
W. Huang (Ph.D.)
–
X. Ouyang (Ph.D.)
–
W. Jiang (M.S.)
–
S. Pai (M.S.)
–
S. Kini (M.S.)
–
S. Potluri (Ph.D.)
–
R. Rajachandrasekhar (Ph.D.)
–
M. Koop (Ph.D.)
–
A. Singh (Ph.D.)
–
R. Kumar (M.S.)
–
H. Subramoni (Ph.D.)
–
S. Krishnamoorthy (M.S.)
Current Research Scientist
–
Past Students
S. Sur
CCGrid '11
Current Post-Docs
Past Post-Docs
–
P. Lai (Ph. D.)
–
J. Liu (Ph.D.)
–
A. Mamidala (Ph.D.)
–
G. Marsh (M.S.)
–
S. Naravula (Ph.D.)
–
R. Noronha (Ph.D.)
–
G. Santhanaraman (Ph.D.)
–
J. Sridhar (M.S.)
–
S. Sur (Ph.D.)
–
K. Vaidyanathan (Ph.D.)
–
A. Vishnu (Ph.D.)
–
J. Wu (Ph.D.)
–
W. Yu (Ph.D.)
Current Programmers
–
H. Wang
–
E. Mancini
–
M. Arnold
–
J. Vienne
–
S. Marcarelli
–
D. Bureddy
–
X. Besseron
–
H.-W. Jin
–
J. Perkins
149
Web Pointers
http://www.cse.ohio-state.edu/~panda
http://www.cse.ohio-state.edu/~surs
http://nowlab.cse.ohio-state.edu
MVAPICH Web Page
http://mvapich.cse.ohio-state.edu
[email protected]
[email protected]
CCGrid '11
150