FiberMall은 종단 간 InfiniBand 솔루션을 제공합니다.

기술 분야에서 ChatGPT가 폭발적으로 증가한 후 사람들은 AI의 "다음 단계"가 무엇인지 논의하고 있으며 많은 학자들이 다중 모드를 언급했습니다. 최근 OpenAI는 사전 학습된 멀티모달 빅 모델 GPT-4를 출시했습니다. GPT-4는 강력한 그래프 인식, 텍스트 입력 제한을 25,000단어로 높임, 답변 정확도의 상당한 개선, 가사 생성 기능, 독창적인 텍스트 및 스타일 변경 실현과 같은 측면에서 비약적인 발전을 이루었습니다.

이러한 효율적인 반복은 대규모 컴퓨팅 리소스와 고속 데이터 전송 네트워크가 필요한 AI 대규모 모델 교육과 불가분의 관계입니다. 그 중 end-to-end IB(InfiniBand) 네트워크는 고성능 컴퓨팅 및 AI 모델 훈련에 특히 적합한 고성능 컴퓨팅 네트워크입니다. 본 논문에서는 AIGC 모델 훈련이 무엇인지, end-to-end IB 네트워크가 왜 필요한지, 그리고 AIGC 훈련을 위해 ChatGPT 모델을 어떻게 활용하는지 소개한다.

AIGC란?

AIGC(AI Generated Content)는 AI가 자동으로 생성한 콘텐츠를 말하며 그림, 글, 동영상 및 기타 여러 유형의 콘텐츠 제작에 사용할 수 있습니다. 2022년 AIGC는 빠른 속도로 발전하고 있으며 딥 러닝 모델이 지속적으로 개선되고 오픈 소스 모델의 홍보와 AIGC의 발전이 되는 대형 모델 탐색의 상용화 가능성이 "가속화"됩니다. 예를 들어 에세이를 쓰고, 소설과 코드를 만들 수 있고, 온라인에 접속한 지 2개월밖에 되지 않았으며, 월간 사용자 수는 100억명에 달하는 챗봇인 ChatGPT를 예로 들어 보겠습니다. 예상치 못한 "지능형"으로 인해 AIGC는 "기술 산업의 차세대 파괴자", "콘텐츠 생산성의 주요 혁명"으로 간주됩니다.

AIGC

대규모 언어 모델(LLM) 및 ChatGPT

Large Language Model은 자연어를 습득하고 이해할 수 있는 인공지능 기술입니다. 일반적으로 대량의 텍스트 데이터를 학습하여 언어학적 지식을 습득하는 딥러닝 알고리즘을 기반으로 하며 대화, 기사 등의 자연어 텍스트를 생성할 수 있습니다. ChatGPT는 GPT(Generative Pre -trained Transformer)는 OpenAI에서 개발하여 언어적으로 표현적인 자연어 텍스트를 생성하고 대량의 텍스트 데이터를 사전 훈련하고 미세 조정하여 사용자와 상호 작용합니다. 따라서 ChatGPT는 대규모 언어 모델링 기술을 기반으로 한 챗봇이라고 할 수 있습니다. 대규모 언어 모델의 강력한 언어 이해 및 생성 기능을 활용하여 대화에서 자연어 텍스트를 생성하고 이해할 수 있습니다. 딥 러닝 기술의 발전으로 대규모 언어 모델의 기능과 규모가 계속해서 증가하고 있습니다. 원래의 언어 모델(예: N-gram 모델)은 제한된 상황 정보만 고려할 수 있었지만 현대의 대규모 언어 모델(예: BERT, GPT-3 등)은 훨씬 더 긴 상황 정보를 고려할 수 있으며 일반화 및 생성 기능이 더 강력합니다. 대규모 언어 모델은 일반적으로 순환 신경망(RNN), 장기 및 단기 메모리(LSTM), 게이트 순환 단위(GRU) 및 변환기와 같은 심층 신경망을 사용하여 훈련됩니다. 학습에서 모델은 대규모 텍스트 데이터 세트를 사용하여 비지도 또는 반지도 방식으로 학습됩니다. 예를 들어 BERT 모델은 예측 마스크, 다음 문장 등과 같은 작업으로 학습되는 반면 GPT-3는 대규모 자기 지도 학습 방식을 사용합니다. 대규모 언어 모델은 기계 번역, 자연어 생성, 질문 및 답변 시스템, 텍스트 분류, 감정 분석 등과 같은 자연어 처리 분야에서 광범위한 응용 분야를 가지고 있습니다.

교육 LLM의 현재 병목 현상은 무엇입니까?

대규모 언어 모델을 교육할 때 많은 양의 데이터를 전송하려면 빠르고 안정적인 네트워크가 필요합니다. 예를 들어, OpenAI는 모델 크기가 1억 117만 매개변수인 GPT 모델(GPT-2)의 첫 번째 버전을 출시했습니다. 그 후 OpenAI는 각각 3억 150천만 개 및 1.75조 XNUMX천 XNUMX백만 개의 매개변수를 가진 GPT-XNUMX 및 GPT-XNUMX와 같은 더 큰 모델을 연속적으로 출시했습니다. 이러한 큰 매개변수는 단일 머신에서 훈련하는 것이 완전히 불가능하며 GPU 컴퓨팅 클러스터에 대한 의존도가 높아야 합니다. 현재 병목 현상은 훈련 클러스터의 노드 간의 효율적인 통신 문제를 해결하는 방법에 있습니다.

교육 LLM의 현재 병목 현상

가장 일반적으로 사용되는 GPU 통신 알고리즘 중 하나는 Ring-Allreduce이며, 기본 아이디어는 GPU가 링을 형성하고 데이터가 링 내에서 흐르도록 하는 것입니다. 링의 GPU는 각 GPU가 하나의 왼쪽 이웃과 하나의 오른쪽 이웃을 갖고 오른쪽 이웃에게만 데이터를 보내고 왼쪽 이웃으로부터 데이터를 받는 논리로 배열됩니다. 알고리즘은 두 단계로 진행됩니다. 첫 번째 산란 감소와 전체 수집입니다. 산포 감소 단계에서 GPU는 각 GPU가 최종 결과의 블록을 얻을 수 있도록 데이터를 교환합니다. allgather 단계에서 GPU는 모든 GPU가 완전한 최종 결과를 얻도록 이러한 블록을 교환합니다.

링 올리듀스

초기에는 단일 시스템 내부에 NVLink가 없었고 네트워크에 RDMA가 없었고 대역폭이 상대적으로 낮았습니다. 단일 머신 배포와 멀티 머신 배포 사이에 대역폭의 차이가 별로 없었기 때문에 큰 링을 구축하기에 충분했습니다. 그러나 이제 단일 시스템 내부에 NVLink가 있으므로 동일한 방법을 사용하는 것은 적절하지 않습니다. 네트워크의 대역폭은 NVLink보다 훨씬 낮기 때문에 다시 큰 링을 사용하면 NVLink의 높은 대역폭이 네트워크 수준으로 심각하게 낮아지게 됩니다. 둘째, 이제 다중 NIC 환경입니다. 또한 여러 혜택을 완전히 활용하는 것도 불가능합니다. NIC 하나의 링만 사용하는 경우. 따라서 이러한 시나리오에서는 XNUMX단계 링이 권장됩니다. 첫째, 데이터 동기화는 NVLink의 고대역폭 이점을 사용하여 단일 시스템 내의 GPU 간에 수행됩니다. 그런 다음 여러 머신 사이의 GPU는 여러 NIC를 사용하여 여러 링을 설정하여 서로 다른 세그먼트의 데이터를 동기화합니다. 마지막으로 단일 머신 내부의 GPU가 다시 한 번 동기화되어 최종적으로 모든 GPU의 데이터 동기화가 완료되며 여기에서 NCCL을 언급해야 합니다.

NCCL

NCCL(NVIDIA Collective Communication Library)은 NVIDIA GPU 및 네트워크에 최적화된 다중 GPU 및 다중 노드 통신 프리미티브를 구현합니다.

다중 GPU 다중 노드

1 GPU->다중 GPU 다중 노드

NCCL은 모두 수집, 모두 감소, 브로드캐스트, 감소, 분산 감소, 지점 간 송수신을 위한 루틴을 제공합니다. 이러한 루틴은 PCIe 및 NVLink 고속 상호 연결을 통한 노드 내 및 NVIDIA Mellanox 네트워크를 통해 높은 대역폭과 낮은 대기 시간에 최적화되어 있습니다.

종단 간 InfiniBand 네트워크를 사용하는 이유는 무엇입니까?

이더넷은 널리 사용되는 네트워크 프로토콜이지만 전송 속도와 대기 시간이 대규모 모델 교육의 요구 사항을 충족하지 못합니다. 이와는 대조적으로 종단 간 InfiniBand 네트워크는 최대 400Gbps의 전송 속도와 마이크로초 대기 시간을 제공할 수 있는 고성능 컴퓨팅 네트워크로, 이더넷 성능보다 훨씬 뛰어납니다. 따라서 InfiniBand 네트워크는 대규모 모델 훈련을 위한 네트워크 기술로 선택됩니다. 또한 종단 간 InfiniBand 네트워크는 안정적인 데이터 전송을 보장하는 데이터 중복 및 오류 수정 메커니즘을 지원합니다. 이는 대규모 모델 훈련에서 특히 중요합니다. 많은 데이터를 처리할 때 데이터 전송 오류 또는 데이터 손실로 인해 훈련 ​​프로세스가 중단되거나 실패할 수 있기 때문입니다. 네트워크 노드 수가 급격히 증가하고 컴퓨팅 성능이 향상됨에 따라 고성능 컴퓨팅에서 성능 병목 현상을 제거하고 시스템 관리를 개선하는 것이 그 어느 때보다 중요해졌습니다. 인피니밴드 그림과 같이 현재 I/O 아키텍처의 성능 병목 현상을 개선할 수 있는 매우 유망한 I/O 기술로 간주됩니다. infiniBand는 처리 오버헤드가 낮은 광범위하고 대기 시간이 짧은 고대역폭 상호 연결 통신 프로토콜로, 단일 연결에서 여러 트래픽 유형(클러스터링, 통신, 저장 및 관리)을 전달하는 데 이상적입니다. 1999년에 IBTA(InfiniBand Trade Association)는 InfiniBand™ 사양에서 상호 연결된 서버, 통신 인프라 장치, 스토리지 및 임베디드 시스템에 대한 입력/출력 아키텍처를 정의하는 InfiniBand 관련 표준을 개발했습니다. InfiniBand는 고성능 컴퓨팅 클러스터에서 널리 사용되는 성숙하고 검증된 기술입니다.

InfiniBand 상호 연결의 아키텍처 다이어그램

InfiniBand 상호 연결의 아키텍처 다이어그램

InfiniBand 상호 연결 프로토콜에 따르면 각 노드에는 호스트 장치와의 링크를 설정하고 유지하기 위해 호스트 채널 어댑터(HCA)가 있어야 합니다. 스위치는 여러 포트를 포함하고 한 포트에서 다른 포트로 데이터 패킷을 전달하여 서브넷 내에서 데이터 전송을 완료합니다.

SM(Subnet Manager)은 각 InfiniBand 장치에서 SMP(Subnet Manager Packet) 및 SMA(Subnet Manager Agent)의 도움을 받아 로컬 서브넷을 구성하고 지속적인 작동을 보장하는 데 사용됩니다. Subnet Manager는 네트워크를 검색 및 초기화하고, 고유 식별자를 모든 장치에 할당하고, MTU(Minimum Transmission Unit)를 결정하고, 선택한 라우팅 알고리즘을 기반으로 스위치 라우팅 테이블을 생성합니다. SM은 또한 서브넷의 주기적인 광학 스캔을 수행하여 모든 토폴로지를 감지합니다. 그에 따라 네트워크를 변경하고 구성합니다. InfiniBand 네트워크 off다른 네트워크 통신 프로토콜보다 더 높은 대역폭, 더 낮은 대기 시간 및 더 큰 확장성을 제공합니다. 또한 InfiniBand는 신용 기반 흐름 제어(송신자 노드가 링크의 다른 쪽 끝에 있는 수신 버퍼에 게시된 신용 수보다 더 많은 데이터를 보내지 않는 경우)를 제공하기 때문에 전송 계층에는 다음과 같은 패킷 손실 메커니즘이 필요하지 않습니다. 전송되는 패킷의 최적 수를 결정하는 TCP 창 알고리즘. 이를 통해 InfiniBand 네트워크는 대기 시간이 매우 짧고 CPU 사용량이 매우 낮은 애플리케이션에 매우 높은 데이터 전송 속도를 제공할 수 있습니다. InfiniBand는 다음을 사용하여 채널의 한쪽 끝에서 다른 쪽 끝으로 데이터를 전송합니다. RDMA 기술(원격 직접 메모리 액세스), 운영 체제의 개입 없이 네트워크를 통해 응용 프로그램 간에 직접 데이터를 전송하는 동시에 양쪽에서 매우 낮은 CPU 리소스를 사용하는 프로토콜(무복사 전송). 한쪽 끝에 있는 응용 프로그램은 단순히 메모리에서 직접 메시지를 읽고 메시지가 성공적으로 전송되었습니다. 감소된 CPU 오버헤드는 데이터를 빠르게 전송하는 네트워크의 기능을 증가시키고 애플리케이션이 데이터를 더 빠르게 수신할 수 있도록 합니다.

FiberMall 종단 간 InfiniBand 네트워킹 솔루션

파이버몰 offNVIDIA Quantum-2 스위치, ConnectX InfiniBand 스마트 카드 및 유연한 기반의 종단 간 솔루션을 제공합니다. 400Gb / s InfiniBand는 고속 네트워킹 추세에 대한 이해와 HPC 및 AI 프로젝트 구현에 대한 광범위한 경험을 기반으로 비용과 복잡성을 줄이는 동시에 고성능 컴퓨팅(HPC), AI 및 하이퍼스케일 클라우드 인프라에서 우수한 성능을 제공하는 동시에 비용과 복잡성을 줄입니다.

FiberMall 데이터 센터 InfiniBand 네트워크 솔루션

FiberMall 데이터 센터 InfiniBand 네트워크 솔루션

코멘트 남김

위쪽으로 스크롤