InfiniBand
InfiniBand (abbreviated IB), a computer-networking communications standard used in high-performance computing, features very high throughput and very low latency. It is used for data interconnect both among and within computers. InfiniBand is also utilized as either a direct, or switched interconnect between servers and storage systems, as well as an interconnect between storage systems.[1]
As of 2014 it is the most commonly used interconnect in supercomputers. Mellanox and Intel manufacture InfiniBand host bus adapters and network switches. Mellanox IB cards are available for Solaris, RHEL, SLES, Windows, HP-UX, VMware ESX.[2] It is designed to be scalable and uses a switched fabric network topology.
As an interconnect, IB competes with Ethernet and proprietary technologies[3] such as Cray's.
Alternative network transport technologies include Fibre Channel and Ethernet.
The technology is promoted by the InfiniBand Trade Association.
Contents
Specification
Performance
SDR | DDR | QDR | FDR-10 | FDR | EDR | HDR | NDR | |
---|---|---|---|---|---|---|---|---|
Signaling rate (Gb/s) | 2.5 | 5 | 10 | 10 | 14.0625[4] | 25 | 50 | |
Theoretical effective throughput, Gbs, per 1x[5] | 2 | 4 | 8 | 9.70 | 13.64 | 24.24 | ||
Speeds for 4x links (Gbit/s) | 8 | 16 | 32 | 38.79 | 54.54 | 96.97 | ||
Speeds for 12x links (Gbit/s) | 24 | 48 | 96 | 116.36 | 163.64 | 290.91 | ||
Encoding (bits) | 8/10 | 8/10 | 8/10 | 64/66 | 64/66 | 64/66 | ||
Latency (microseconds)[6] | 5 | 2.5 | 1.3 | 0.7 | 0.7 | 0.5 | ||
Year[7] | 2001, 2003 |
2005 | 2007 | 2011 | 2014[5] | ~2017[5] | after 2020 |
Links can be aggregated: most systems use a 4X aggregate. 12X links are typically used for cluster and supercomputer interconnects and for inter-switch connections.
InfiniBand also provides RDMA capabilities for low CPU overhead.
Topology
InfiniBand uses a switched fabric topology, as opposed to early shared medium Ethernet. All transmissions begin or end at a channel adapter. Each processor contains a host channel adapter (HCA) and each peripheral has a target channel adapter (TCA). These adapters can also exchange information for security or quality of service (QoS).
Messages
InfiniBand transmits data in packets of up to 4 KB that are taken together to form a message. A message can be:
- a direct memory access read from or, write to, a remote node (RDMA).
- a channel send or receive
- a transaction-based operation (that can be reversed)
- a multicast transmission.
- an atomic operation
Physical interconnection
In addition to a board form factor connection, it supports both active and passive copper (up to 30 meters) and optical fiber cable (up to 10 km).[8] QSFP connectors are used.
The Inifiniband Association also specified the CXP copper connector system for speeds up to 120 Gbit/s over copper and active optical cables.
API
InfiniBand has no standard API. The standard only lists a set of verbs, functions that must exist. The syntax of these functions is left to the vendors. The de facto standard software stack is that developed by OpenFabrics Alliance. It is released under two licenses GPL2 or BSD license for GNU/Linux and FreeBSD, and as WinOF under a choice of BSD license for Windows. It has been adopted by most of the InfiniBand vendors, for GNU/Linux, FreeBSD, and Windows.
History
InfiniBand originated in 1999 from the merger of two competing designs: Future I/O and Next Generation I/O. This led to the formation of the InfiniBand Trade Association, which included, Compaq, Dell, Hewlett-Packard, IBM, Intel, Microsoft, and Sun. At the time it was thought some of the more powerful computers were approaching the interconnect bottleneck of the PCI bus, in spite of upgrades like PCI-X.[9] Version 1.0 of the InfiniBand Architecture Specification was released in 2000. Initially the IBTA vision for IB was simultaneously a replacement for PCI in I/O, Ethernet in the machine room, cluster interconnect and Fibre Channel. IBTA also envisaged decomposing server hardware on an IB fabric. Following the burst of the dot-com bubble there was hesitation in the industry to invest in such a far-reaching technology jump.[10]
Timeline
- 2001: Mellanox ships InfiniBridge 10Gbit/s devices and ships over 10,000 InfiniBand ports.[11]
- 2002: adoption takes a setback when Intel announces that instead of shipping IB chips it would focus on developing PCI Express, and Microsoft discontinues IB development in favor of extending Ethernet, although Sun and Hitachi continue to support IB.[12]
- 2003: Virginia Tech builds an InfiniBand cluster ranked number three on the Top500 at the time.
- 2004: IB starts to see adoption as a clustering interconnect, beating Ethernet on latency and price.[10] The OpenFabrics Alliance develops a standardized, Linux-based InfiniBand software stack. The following year Linux adds IB support.[13]
- 2005: IB begins to be implemented as an interconnect for storage devices.[14]
- 2009: of the top 500 supercomputers in the world, Gigabit Ethernet is the internal interconnect technology in 259 installations, compared with 181 using InfiniBand.[15]
- 2010: Market leaders Mellanox and Voltaire merge, leaving just one other IB vendor, QLogic, primarily a Fibre Channel vendor.[16] Oracle makes a major investment in Mellanox.
- 2011: FDR switches and adapters announced at the International Supercomputing Conference.[17]
- 2012: Intel acquires QLogic's InfiniBand technology.[18]
- 2014: of the top 500 supercomputers in the world, Infiniband is the internal interconnect technology in 224 installations, compared with 100 using Gigabit Ethernet, and 88 using 10 Gigabit Ethernet.[19]
See also
- SCSI RDMA Protocol
- iSCSI Extensions for RDMA
- iWARP
- List of device bandwidths
- Optical interconnect
- Optical communication
- Parallel optical interface
- 40/100 Gigabit Ethernet
References
- ↑ http://www.ddn.com/products/storage-platform-sfa12kx/config-specs
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ https://cw.infinibandta.org/document/dl/7260
- ↑ 5.0 5.1 5.2 http://www.infinibandta.org/content/pages.php?pg=technology_overview
- ↑ http://www.hpcadvisorycouncil.com/events/2014/swiss-workshop/presos/Day_1/1_Mellanox.pdf // Mellanox
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
- Lua error in package.lua at line 80: module 'strict' not found.
- Mellanox Technologies: InfiniBand Performance Metrics