Exture+ 이후, Infiniband와 HSE 두번째

1.
Exture+ 이후, Infiniband와 HSE를 통해 앞으로 네트워크를 둘러싼 중요한 주제를 살폈습니다. 네트워크를 구성할지, 이것은 영향도가 무척이나 큰 결정입니다. 물론 어떤 경우도 Infiniband만으로 전사적 네트워크를 구성하지 않습니다. 가격 대비 비용때문입니다. 가장 중요한 백본만 결정하더라도 하드웨어, 네트워크, 소프트웨어 영역에서 모두 영향을 받습니다. 초창기 Infiniband와 관련한 초기 설계는 High Performance Mass Storage and Parallel I/OChapter 42: An Introduction to the InfiniBand Architecture에 잘 나와있습니다. 2001년에 쓰여진 책입니다.

이후 Infiniband는 계속 발전을 했습니다. HPC Advisory Council Workshop 2010 행사 때 Mellanox가  InfiniBand Architecture Overview (Erez Cohen)를 잘 정리해서 설명해주고 있습니다.

Download (PDF, 526KB)

2.
자본시장내에서 Infiniband는 어떤 지위를 가질까요? 솔직히 정보가 없습니다만 Infiniband와 관련한 일을 10여년 하고 있는 Richard Croucher는 이렇게 정리합니다.

InfiniBand was defined and has been deployed for nearly a decade now. It was originally intended to be a successor to the PCI bus in x86 systems. However, due to the intense interest at that time in clustering computers it evolved into an external interconnect (there are lots of similarities with the ePCI standards which leveraged much of the InfiniBand work). InfiniBand was designed from the ground up to provide a high performance, low latency interconnect. The architects successfully applied the lessons learnt from previous interconnects such as FibreChannel(which was also originally intended to be a universal interconnect) and consciously made the decision to abandon backward compatibility with Ethernet. This freed them from it’s legacy and enabled them to design in features such as RDMA and provide features such as reliable delivery.

The High Performance compute community were the initial primary users of InfiniBand. As with any new protocol it took a number of years before capabilities such as management and interoperability matured. InfiniBand is now used to provide more compute power than any other interconnect in the worlds top500 supercomputer installations (InfiniBand RmaxSum = 15,895,656, Ethernet RmaxSum = 7,776,035, June 2010).

InfiniBand has been providing 40Gbps connectivity to servers since 2008. Higher performance has been delayed waiting for the increased bandwidth promised by ePCI Gen3. Once this becomes available, firstly with Intel’s Sandy Bridge based systems, then InfiniBand FDR products running at 56Gbp/s will become possible. These will quickly be followed by EDR at 108Gbp/s.
InfiniBand중에서

Infiniband와 관련한 어떤 검토가 필요할까요? Richard Croucher는 아래 다섯가지를 결정하라고 합니다.

There are five major considerations when designing and deploying InfiniBand:

Congestion Management and Path Selection
Path Selection and Routing
Manageability and Observability
API Selection
Range

이중 소프트웨어와 관련한 의사결정도 필요합니다. PI Selection부분입니다.

The universal approach for programming with TCP/IP is based on Berkeley sockets which first appeared in BSD Unix in 1983. This socket paradigm has been adopted across all platforms and is widely understood. Whilst the original design did support multiple protocol stacks, performance optimizations which have taken place over the last decade have mostly removed this capability. Sockets present a byte stream, which does not lend itself to support the RDMA capabilities now needed to achieve single session wire speed across high performance interconnects. RDMA is a fundamentally different paradigm. Programmers have to think about areas of memory to expose and signalling to notify when transfers complete and therefore safe to read. The HPC and Linux community have created a wide range of API options including:

SDP – Sockets Direct Protocol
RDS – Reliable Datagram Sockets
DAPL – Direct Access Programming library
Libibverbs – InfiniBand/RoCEE VERBs
Libcm_rdma – InfiniBand/RoCEE VERBS

InfinibandAPI1
InfinibandAPI2
InfinibandAPI3

3.
소프트웨어 개발을 할 경우 어떤 API를 사용하더라도 꼭 읽어보라고 하는 자료가 있습니다. InfiniBand Trade Association이 만든 Introduction to InfiniBand™ for End Users중 1장과 4장입니다.

Download (PDF, 1.24MB)

참고로 Mellanox가 만든 자료중 1장과 2장을 읽어도 도움이 됩니다. 비슷한 주제입니다.

Performance Tuning Guidelines for Mellanox Network Adapters

그동안 Infiniband 프로그래밍과 관련한 글이 몇 있었습니다.

IB RDMA 프로그래밍
Chelsio T5와 레이턴시

위의 글에서도 소개한 곳이 The Geek in the Corner입니다. 제가 보기에 RDMA개발과 관련하여 가장 좋은 자료가 있습니다. 그리고 최근까지 자료가 계속 올라오는 곳은 RDMAmojo입니다.

3.
저에게 Infiniband와 HSE중 무엇을 택하냐고 질문을 하면, 저는 HSE를 택합니다. 이유는 단순합니다. 영향도를 최소화하면서 Infiniband에 근접한 성능을 얻을 수 있기때문입니다. 굳이 위험과 비용을 들여서 Infiniband를 해야할 업무가 없습니다. 예를 들어 서울과 부산에 이중으로 파생상품원장시스템을 구축한다고 합시다. 이런 경우는 예외입니다. Infiniband로 네트워킹을 하여 얻을 수 있는 이익이 있다고 생각합니다. 56G로 구성한 Infiniband와 40G로 구성한 Ethernet이라고 하면 Ethernet입니다. 최악의 경우 RDMA가 필요하면 iWARP를 사용하면 됩니다.

그냥 저의 의견일 뿐입니다.

Leave a Comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.