InfiniBand
Tipo | Grupo comercial da indústria |
Propósito | Promovendo InfiniBand |
Sede | Beaverton, Oregon, U.S. |
Sítio oficial | infinibandta |
InfiniBand (IB) é um padrão de comunicação de rede de computadores usado em computação de alto desempenho que apresenta rendimento muito alto e latência muito baixa. É usado para interconexão de dados entre e dentro de computadores. InfiniBand também é usado como uma interconexão direta ou comutada entre servidores e sistemas de armazenamento, bem como uma interconexão entre sistemas de armazenamento. Ele é projetado para ser escalável e usa uma topologia de rede de malha comutada. Entre 2014 e junho de 2016,[1] foi a interconexão mais comumente usada na lista TOP500 de supercomputadores.
A Mellanox (adquirida pela Nvidia) fabrica adaptadores de barramento de host InfiniBand e switches de rede, que são usados por grandes fornecedores de sistemas de computador e bancos de dados em suas linhas.[2]
Como uma interconexão de cluster de computadores, o IB compete com Ethernet, Fibre Channel e Intel Omni-Path. A tecnologia é promovida pela InfiniBand Trade Association.
História
O InfiniBand surgiu em 1999 da fusão de dois projetos concorrentes: Future I/O e Next Generation I/O (NGIO). O NGIO foi liderado pela Intel, com uma especificação lançada em 1998,[3] e acompanhado pela Sun Microsystems e Dell. O Future I/O foi apoiado pela Compaq, IBM e Hewlett-Packard.[4] Isso levou à formação da InfiniBand Trade Association (IBTA), que incluía ambos os conjuntos de fornecedores de hardware, bem como fornecedores de software, como a Microsoft. Na época, pensava-se que alguns dos computadores mais poderosos estavam se aproximando do gargalo de interconexão do barramento PCI, apesar de atualizações como PCI-X.[5] A versão 1.0 da especificação de arquitetura InfiniBand foi lançada em 2000. Inicialmente, a visão do IBTA para o IB era simultaneamente uma substituição para PCI em I/O, Ethernet na sala de máquinas, interconexão de cluster e Fibre Channel. O IBTA também previu a decomposição de hardware de servidor em uma estrutura IB.
A Mellanox foi fundada em 1999 para desenvolver a tecnologia NGIO, mas em 2001 lançou uma linha de produtos InfiniBand chamada InfiniBridge com velocidades de 10 Gbit/segundo.[6] Após o estouro da bolha das pontocom, houve hesitação na indústria em investir em um salto tecnológico de tão longo alcance.[7] Em 2002, a Intel anunciou que, em vez de lançar circuitos integrados IB ("chips"), ela se concentraria no desenvolvimento de PCI Express, e a Microsoft descontinuou o desenvolvimento do IB em favor da extensão do Ethernet. A Sun Microsystems e a Hitachi continuaram a dar suporte ao IB.[8]
Em 2003, o supercomputador System X construído na Virginia Tech usou InfiniBand no que foi estimado ser o terceiro maior computador do mundo na época.[9] A OpenIB Alliance (mais tarde renomeada OpenFabrics Alliance) foi fundada em 2004 para desenvolver um conjunto aberto de software para o kernel Linux. Em fevereiro de 2005, o suporte foi aceito no kernel Linux 2.6.11.[10][11] Em novembro de 2005, dispositivos de armazenamento finalmente foram lançados usando InfiniBand de fornecedores como a Engenio.[12] A Cisco, desejando manter a tecnologia superior à Ethernet fora do mercado, adotou uma estratégia de "comprar para matar". A Cisco matou com sucesso empresas de comutação InfiniBand, como a Topspin, por meio de aquisição.[13]
Dos 500 maiores supercomputadores em 2009, Gigabit Ethernet foi a tecnologia de interconexão interna em 259 instalações, em comparação com 181 usando InfiniBand.[14] Em 2010, os líderes de mercado Mellanox e Voltaire se fundiram, deixando apenas um outro fornecedor de IB, QLogic, principalmente um fornecedor de Fibre Channel.[15] Na Conferência Internacional de Supercomputação de 2011, links rodando a cerca de 56 gigabits por segundo (conhecidos como FDR, veja abaixo), foram anunciados e demonstrados conectando estandes na feira.[16] Em 2012, a Intel adquiriu a tecnologia InfiniBand da QLogic, deixando apenas um fornecedor independente.[17]
Em 2014, o InfiniBand era a tecnologia de conexão interna mais popular para supercomputadores, embora em dois anos, o 10 Gigabit Ethernet começou a substituí-lo.[1]
Em 2016, foi relatado que a Oracle Corporation (um investidor da Mellanox) poderia projetar seu próprio hardware InfiniBand.[2]
Em 2019, a Nvidia adquiriu a Mellanox, o último fornecedor independente de produtos InfiniBand.[18]
Especificação
As especificações são publicadas pela associação comercial InfiniBand.
Desempenho
Os nomes originais para velocidades eram taxa de dados única (SDR), taxa de dados dupla (DDR) e taxa de dados quádrupla (QDR), conforme indicado abaixo.[12] Posteriormente, outras siglas de três letras foram adicionadas para taxas de dados ainda maiores.[19]
Ano[20] | Código de linha | Taxa de sinalização (Gbit/s) | Throughput (Gbit/s)[21] | Latência do adaptador (μs)[22] | |||||
---|---|---|---|---|---|---|---|---|---|
1x | 4x | 8x | 12x | ||||||
SDR | 2001, 2003 | NRZ | 8b/10b[23] | 2.5 | 2 | 8 | 16 | 24 | 5 |
DDR | 2005 | 5 | 4 | 16 | 32 | 48 | 2.5 | ||
QDR | 2007 | 10 | 8 | 32 | 64 | 96 | 1.3 | ||
FDR10 | 2011 | 64b/66b | 10.3125[24] | 10 | 40 | 80 | 120 | 0.7 | |
FDR | 2011 | 14.0625[25][19] | 13.64 | 54.54 | 109.08 | 163.64 | 0.7 | ||
EDR | 2014[26] | 25.78125 | 25 | 100 | 200 | 300 | 0.5 | ||
HDR | 2018[26] | PAM4 | 53.125[27] | 50 | 200 | 400 | 600 | <0.6[28] | |
NDR | 2022[26] | 256b/257b[i] | 106.25[29] | 100 | 400 | 800 | 1200 | ? | |
XDR | 2024[30] | TBA | TBA | 200 | 200 | 800 | 1600 | 2400 | TBA |
GDR | TBA | 400 | 400 | 1600 | 3200 | 4800 |
- Notss
- ↑ Usando correção de erros de avanço Reed-Solomon
Cada link é duplex. Os links podem ser agregados: a maioria dos sistemas usa um conector de 4 links/pistas (QSFP). O HDR geralmente usa links 2x (também conhecido como HDR100, link de 100 Gb usando 2 pistas de HDR, enquanto ainda usa um conector QSFP). 8x é necessário com portas de switch NDR usando conectores OSFP (Octal Small Form Factor Pluggable).[31]
O InfiniBand fornece recursos de acesso direto à memória remota (RDMA) para baixa sobrecarga de CPU.
Topologia
O InfiniBand usa uma topologia de malha comutada, em oposição ao antigo meio compartilhado Ethernet. Todas as transmissões começam ou terminam em um adaptador de canal. Cada processador contém um adaptador de canal host (HCA) e cada periférico tem um adaptador de canal de destino (TCA). Esses adaptadores também podem trocar informações para segurança ou qualidade de serviço (QoS).
Mensagens
O InfiniBand transmite dados em pacotes de até 4 KB que são reunidos para formar uma mensagem. Uma mensagem pode ser:
- um acesso remoto direto à memória, leitura ou gravação
- um canal de envio ou recebimento
- uma operação baseada em transações (que pode ser revertida)
- uma transmissão multicast
- uma operação atômica
Interconexão física
Além de uma conexão de fator de forma de placa, ele pode usar cobre ativo e passivo (até 10 metros) e cabo de fibra óptica (até 10 km).[32] Conectores QSFP são usados.
A InfiniBand Association também especificou o sistema de conectores CXP para velocidades de até 120 Gbit/s em cabos ópticos ativos de cobre e transceptores ópticos usando cabos de fibra multimodo paralelos com conectores MPO de 24 fibras.[carece de fontes]
Interfaces de software
O suporte ao sistema operacional Mellanox está disponível para Solaris, FreeBSD,[33][34] Red Hat Enterprise Linux, SUSE Linux Enterprise Server (SLES), Windows, HP-UX, VMware ESX,[35] e AIX.[36]
O InfiniBand não tem uma interface de programação de aplicativo (API) padrão específica. O padrão lista apenas um conjunto de verbos como ibv_open_device
ou ibv_post_send
, que são representações abstratas de funções ou métodos que devem existir. A sintaxe dessas funções é deixada para os fornecedores. Às vezes, para referência, isso é chamado de API de verbos. O software padrão de facto é desenvolvido pela OpenFabrics Alliance e chamado de Open Fabrics Enterprise Distribution (OFED). Ele é lançado sob duas licenças GPL2 ou licença BSD para Linux e FreeBSD, e como Mellanox OFED para Windows (nomes de produtos: WinOF/WinOF-2; atribuído como driver de controlador de host para corresponder a dispositivos ConnectX 3 a 5 específicos)[37] sob uma escolha de licença BSD para Windows. Ele foi adotado pela maioria dos fornecedores do InfiniBand, para Linux, FreeBSD e Microsoft Windows. A IBM se refere a uma biblioteca de software chamada libibverbs
, para seu sistema operacional AIX, bem como "verbos AIX InfiniBand".[38] O suporte ao kernel Linux foi integrado em 2005 na versão 2.6.11 do kernel.[39]
Ethernet sobre InfiniBand
Ethernet sobre InfiniBand, abreviado para EoIB, é uma implementação Ethernet sobre o protocolo InfiniBand e tecnologia de conector. EoIB permite múltiplas larguras de banda Ethernet variando na versão InfiniBand (IB).[40] A implementação Ethernet do Internet Protocol Suite, geralmente referido como TCP/IP, é diferente em alguns detalhes em comparação com o protocolo InfiniBand direto em IP sobre IB (IPoIB).
Tipo | Pistas | Largura de banda (Gbit/s) | Tipo(s) de Ethernet compatível(is) | Quantidade de Ethernet compatível |
---|---|---|---|---|
SDR | 1 | 2.5 | GbE a 2.5 GbE | 2 × GbE a 1 × 2.5 GbE |
4 | 10 | GbE a 10 GbE | 10 × GbE a 1 × 10 GbE | |
8 | 20 | GbE a 10 GbE | 20 × GbE a 2 × 10 GbE | |
12 | 30 | GbE a 25 GbE | 30 × GbE a 1 × 25 GbE + 1 × | 5 GbE|
DDR | 1 | 5 | GbE a 5 GbE | 5 × GbE a 1 × 5 GbE |
4 | 20 | GbE a 10 GbE | 20 × GbE a 2 × 10 GbE | |
8 | 40 | GbE a 40 GbE | 40 × GbE a 1 × 40 GbE | |
12 | 60 | GbE a 50 GbE | 60 × GbE a 1 × 50 GbE + 1 × 10 GbE | |
QDR | 1 | 10 | GbE a 10 GbE | 10 × GbE a 1 × 10 GbE |
4 | 40 | GbE a 40 GbE | 40 × GbE a 1 × 40 GbE |
Referências
- ↑ a b «Highlights– June 2016». Top500.Org. Junho de 2016. Consultado em 31 de agosto de 2024.
InfiniBand technology is now found on 205 systems, down from 235 systems, and is now the second most-used internal system interconnect technology. Gigabit Ethernet has risen to 218 systems up from 182 systems, in large part thanks to 176 systems now using 10G interfaces.
- ↑ a b Timothy Prickett Morgan (23 de fevereiro de 2016). «Oracle Engineers Its Own InfiniBand Interconnects». The Next Platform. Consultado em 31 de agosto de 2024
- ↑ Scott Bekker (11 de novembro de 1998). «Intel Introduces Next Generation I/O for Computing Servers». Redmond Channel Partner. Consultado em 31 de agosto de 2024
- ↑ Will Wade (31 de agosto de 1999). «Warring NGIO and Future I/O groups to merge». EE Times. Consultado em 31 de agosto de 2024
- ↑ Pentakalos, Odysseas. «An Introduction to the InfiniBand Architecture». O'Reilly. Consultado em 2 de setembro de 2024. Cópia arquivada em 5 de junho de 2002
- ↑ «Timeline». Mellanox Technologies. Consultado em 31 de agosto de 2024. Cópia arquivada em 29 de novembro de 2019
- ↑ Kim, Ted. «Brief History of InfiniBand: Hype to Pragmatism». Oracle. Consultado em 31 de agosto de 2024. Arquivado do original em 8 de agosto de 2014
- ↑ Computerwire (2 de dezembro de 2002). «Sun confirms commitment to InfiniBand». The Register. Consultado em 31 de agosto de 2024
- ↑ «Virginia Tech Builds 10 TeraFlop Computer». R&D World. 30 de novembro de 2003. Consultado em 31 de agosto de 2024. Cópia arquivada em 28 de setembro de 2021
- ↑ Sean Michael Kerner (24 de fevereiro de 2005). «Linux Kernel 2.6.11 Supports InfiniBand». Internet News. Consultado em 31 de agosto de 2024
- ↑ OpenIB Alliance (21 de janeiro de 2005). «OpenIB Alliance Achieves Acceptance By Kernel.org». Press release. Consultado em 31 de agosto de 2024
- ↑ a b Ann Silverthorn (12 de janeiro de 2006), «Is InfiniBand poised for a comeback?», Infostor, 10 (2), consultado em 31 de agosto de 2024
- ↑ Connor, Deni. «What Cisco-Topspin deal means for InfiniBand». Network World (em inglês). Consultado em 31 de agosto de 2024
- ↑ Lawson, Stephen (16 de novembro de 2009). «Two rival supercomputers duke it out for top spot». Computerworld. Consultado em 31 de agosto de 2024. Cópia arquivada em 29 de setembro de 2021
- ↑ Raffo, Dave. «Largest InfiniBand vendors merge; eye converged networks». Consultado em 31 de agosto de 2024. Arquivado do original em 1 de julho de 2017
- ↑ Mikael Ricknäs (20 de junho de 2011). «Mellanox Demos Souped-Up Version of InfiniBand». CIO. Consultado em 31 de agosto de 2024. Arquivado do original em 6 de abril de 2012
- ↑ Michael Feldman (23 de janeiro de 2012). «Intel Snaps Up InfiniBand Technology, Product Line from QLogic». HPCwire. Consultado em 31 de agosto de 2024
- ↑ «Nvidia to Acquire Mellanox for $6.9 Billion». Press release. 11 de março de 2019. Consultado em 31 de agosto de 2024
- ↑ a b «FDR InfiniBand Fact Sheet». InfiniBand Trade Association. 11 de novembro de 2021. Consultado em 2 de setembro de 2024. Cópia arquivada em 27 de abril de 2021
- ↑ Panda, Dhabaleswar K.; Sayantan Sur (2011). «Network Speed Acceleration with IB and HSE» (PDF). Designing Cloud and Grid Computing Systems with InfiniBand and High-Speed Ethernet. Newport Beach, CA, USA: CCGrid 2011. 23 páginas. Consultado em 2 de setembro de 2024
- ↑ «InfiniBand Roadmap: IBTA - InfiniBand Trade Association». Consultado em 27 de outubro de 2009. Arquivado do original em 29 de setembro de 2011
- ↑ http://www.hpcadvisorycouncil.com/events/2014/swiss-workshop/presos/Day_1/1_Mellanox.pdf // Mellanox
- ↑ «InfiniBand Types and Speeds»
- ↑ «Interfaces». NVIDIA Docs (em inglês). Consultado em 2 de setembro de 2024.
FDR10 is a non-standard InfiniBand data rate, where each lane of a 4X port runs a bit rate of 10.3125 Gbit/s with a 64b/66b encoding, resulting in an effective bandwidth of 40 Gbit/s. FDR10 supports 20% more bandwidth over QDR due to better encoding rate.
- ↑ «324-Port InfiniBand FDR SwitchX® Switch Platform Hardware User Manual» (PDF). nVidia. 29 de abril de 2018. section 1.2. Consultado em 2 de setembro de 2024.
InfiniBand FDR and FDR10 Overview [...] FDR, standard InfiniBand data rate, where each lane of a 4X port runs a bit rate of 14.0625 Gbit/s with a 64b/66b encoding, resulting in an effective bandwidth of 54.54 Gbit/s. The FDR physical layer is an IBTA specified physical layer using different block types, deskew mechanism and framing rules. The SX6518 switch also supports FDR10, a non-standard InfiniBand data rate, where each lane of a 4X port runs a bit rate of 10.3125 Gbit/s with a 64b/66b encoding, resulting in an effective bandwidth of 40 Gbit/s.
- ↑ a b c «InfiniBand Roadmap - Advancing InfiniBand». InfiniBand Trade Association (em inglês)
- ↑ «Introduction». NVIDIA Docs (em inglês). Consultado em 2 de setembro de 2024
- ↑ https://www.mellanox.com/files/doc-2020/pb-connectx-6-vpi-card.pdf Arquivado em 2021-07-13 no Wayback Machine
- ↑ «Introduction». NVIDIA Docs (em inglês). Consultado em 2 de setembro de 2024
- ↑ «NVIDIA Announces New Switches Optimized for Trillion-Parameter GPU Computing and AI Infrastructure». NVIDIA Newsroom (em inglês). Consultado em 2 de setembro de 2024
- ↑ «Cable and Connector Definitions» (em inglês)
- ↑ «Specification FAQ». ITA. Consultado em 2 de setembro de 2024. Arquivado do original em 24 de novembro de 2016
- ↑ «Mellanox OFED for FreeBSD». Mellanox. Consultado em 2 de setembro de 2024. Cópia arquivada em 1 de maio de 2021
- ↑ Mellanox Technologies (3 de dezembro de 2015). «FreeBSD Kernel Interfaces Manual, mlx5en». FreeBSD Man Pages (em inglês). FreeBSD. Consultado em 2 de setembro de 2024
- ↑ «InfiniBand Cards - Overview». Mellanox. Consultado em 2 de setembro de 2024. Cópia arquivada em 1 de outubro de 2014
- ↑ «Implementing InfiniBand on IBM System p (IBM Redbook SG24-7351-00)» (PDF)
- ↑ Mellanox OFED for Windows - WinOF / WinOF-2 Arquivado em 2014-09-01 no Wayback Machine
- ↑ «Verbs API». IBM AIX 7.1 documentation. 2020. Consultado em 2 de setembro de 2024
- ↑ Dotan Barak (11 de março de 2014). «Verbs programming tutorial» (PDF). OpenSHEM, 2014. Mellanox. Consultado em 2 de setembro de 2024
- ↑ «10 Advantages of InfiniBand». NADDOD. Consultado em 2 de setembro de 2024
Ligações externas
- Kerr, Gregory (2011), Dissecting a Small InfiniBand Application Using the Verbs API, Bibcode:2011arXiv1105.1827K, arXiv:1105.1827
- InfiniBand Trade Association web site