소식

gpu에 도전하는 또 다른 칩

2024-10-04

한어한어Русский языкРусский языкEnglishEnglishFrançaisFrançaisIndonesianSanskritIndonesian日本語SanskritDeutsch日本語PortuguêsDeutschΕλληνικάPortuguêsespañolΕλληνικάItalianoespañolSuomalainenItalianoLatinaSuomalainenLatina

요약

30억 매개변수 llm의 경우 16개의 ibm aiu northpole 프로세서를 탑재한 연구용 프로토타입 추론 어플라이언스는 초당 28,356개의 대규모 시스템 처리량을 제공했으며 16개의 northpole 카드는 672w만 ​​소비하는 것과 비교하여 1ms/토큰(사용자당) 미만의 대기 시간을 제공했습니다. 컴팩트한 2u 폼 팩터. 낮은 대기 시간과 높은 에너지 효율성에 초점을 맞춘 northpole(12nm)은 다양한 전력 소비에서 gpu 세트(7/5/4nm)와 비교됩니다.가장 낮은 gpu 대기 시간에서 northpole은 72.7 더 나은 에너지 효율성 지표(토큰/s/w)를 제공하는 동시에 더 나은 대기 시간을 제공합니다.

소개하다

llm(대형 언어 모델)은 코드 제안을 제공하여 프로그래밍을 지원하고, 표준화된 테스트에서 우수한 성능을 발휘하고, 기사, 블로그, 이미지 및 비디오의 콘텐츠 생성을 지원하는 등 다양한 ai 작업에서 중요한 성능 벤치마크를 달성했습니다.

llm의 대규모 배포, 특히 인공 지능의 대규모 배포에서는 두 가지 주요하고 상충되는 문제, 즉 에너지 소비와 응답 대기 시간이 발생합니다.

첫째, llm은 훈련과 추론 모두에 상당한 에너지 자원을 필요로 하기 때문에 효율적이고 광범위한 배포를 위해서는 지속 가능한 미래 컴퓨팅 인프라가 필요합니다. 데이터 센터의 탄소 배출량이 확대되고 에너지가 점점 더 제한됨에 따라 데이터 센터의 에너지 효율성이 점점 더 중요해지고 있습니다. 세계경제포럼(world economic forum)의 보고서에 따르면:

"현재 데이터 센터의 환경 탄소 발자국은 주로 두 부분으로 나뉩니다. 훈련은 20%, 추론은 80%입니다. 인공 지능 모델이 다양한 분야에서 발전함에 따라 추론에 대한 수요와 환경 발자국이 높아질 것입니다. "

둘째, 대화형 대화 및 자율 워크플로와 같은 많은 애플리케이션에는 매우 짧은 대기 시간이 필요합니다. 특정 컴퓨팅 아키텍처 내에서 처리량을 줄여 대기 시간을 줄일 수 있지만 이로 인해 에너지 효율성이 감소합니다. 고전적인 시스템 격언을 다른 말로 표현하자면:

"처리량 문제는 돈으로 해결할 수 있지만, 지연 문제는 빛의 속도가 고정되어 있기 때문에 더 복잡합니다."([10]에서 "대역폭"을 "처리량"으로 대체함)

gpu는 더 작은 배치 크기를 사용하여 더 낮은 대기 시간을 달성할 수 있지만 처리량과 에너지 효율성이 저하됩니다. 또한 gpu 샤딩은 여러 gpu에서 데이터 병렬성을 사용하여 대기 시간을 줄이지만 에너지 효율성이 저하됩니다. 샤딩 여부에 관계없이 gpu는 대기 시간이 낮아져 엄격한 한계에 도달한 것 같습니다. 에너지 효율성과 대기 시간 간의 gpu 균형은 그림 1에 나와 있습니다.

그림 1: 에너지 및 시스템 대기 시간 측정 기준에서 현재 최첨단 gpu(7/5/4nm)와 비교한 northpole(12nm) 성능. 여기서 시스템 대기 시간은 각 사용자가 경험하는 총 대기 시간입니다. 가장 낮은 gpu 대기 시간(h100, 포인트 p2)에서 northpole은 72.7배 더 나은 에너지 효율성 지표(토큰/초/w)를 제공합니다. 최고의 gpu 에너지 효율 지수(l4, p1 지점)에서 northpole은 46.9배 더 낮은 지연 시간을 제공합니다.

따라서 본 논문에서 탐구하는 주요 연구 질문은 낮은 대기 시간과 높은 에너지 효율성이라는 두 가지 상충되는 목표를 동시에 달성하는 방법입니다.

northpole은 신경망 추론에 탁월한 효율성을 제공하기 위해 첫 번째 원칙에 따라 공동 설계된 추론 가속기 칩과 소프트웨어로 구성된 생태계입니다. northpole이 llm용으로 특별히 설계된 것은 아니지만 놀랍게도 이 문서에서는 새로운 northpole 아키텍처가 대기 시간이 짧고 에너지 효율적인 llm 추론을 달성할 수 있음을 보여줍니다(그림 1, 그림 2 및 표 1).

표 i: 성능 측정

카드별로 northpole 및 gpu 시스템의 성능을 측정했습니다. 각 지표에 대해 #은 낮을수록 좋음을 의미하고, "는 높을수록 좋음을 의미합니다. northpole 16카드 장치의 경우 전력 소비는 카드당 측정되며 총 시스템 처리량은 16개 카드로 나뉩니다. 측정을 위해 16개 카드 전체에 걸친 northpole 대기 시간. p1 , p2, p3, p4는 각각 그림 1과 그림 2에 표시된 지점을 나타내며, gpu 에너지 효율 지수가 가장 높고, 전체 gpu 대기 시간이 가장 낮으며, gpu 공간 지수가 가장 높고, gpu 대기 시간 에너지 효율이 가장 낮습니다.

본 논문의 주요 연구 결과는 다음과 같다.

모델 구조가 ibm granite-8b-code-base 모델에서 파생되고 llama 3 8b 및 mistral 7b [14]와 일치하는 매개변수 크기가 30억인 llm(대형 언어 모델)에 대해 이 논문은 다음을 보여줍니다. 구성 16개의 northpole 프로세서를 갖춘 연구용 프로토타입 추론 장치입니다.

절대적인 성능 측면에서 이 장치는 초당 28,356개의 토큰 시스템 처리량과 1밀리초 미만의 단일 사용자 대기 시간을 제공하는 동시에 2u 모델의 northpole 카드 16개에서 672와트의 전력을 소비합니다.

상대적인 성능 측면에서 12nm northpole을 다양한 전력 소비량의 gpu(각각 7/5/5/4nm a100/l4/l40s/h100)와 비교하면 그림 2(a)에서 볼 수 있듯이 그림 2(c)에서 볼 수 있습니다. 가장 낮은 gpu 대기 시간(포인트 p2)에서 northpole은 72.7배 더 나은 에너지 효율성 메트릭(토큰/초/w)과 15.9배 더 나은 공간 메트릭(토큰/초/트랜지스터)을 제공합니다. 대기 시간은 여전히 ​​2.5배 미만입니다. 최고의 gpu 에너지 효율성 지표(포인트 p1)에서 northpole은 46.9배 더 낮은 대기 시간과 2.1배 더 나은 공간 지표를 제공하는 동시에 2.2배 더 나은 에너지 효율성 지표를 제공합니다. 포인트 p3) northpole은 20.3배 더 낮은 대기 시간과 5.3배 더 나은 에너지 효율성 지표를 제공하는 동시에 1.4배 더 나은 공간 지표를 제공합니다.

특히, 비슷한 전력 소비를 위해 12nm northpole과 5nm l4 gpu를 비교할 때 그림 2(e)에서 가장 높은 l4 처리량(토큰당 50ms 미만, p1 지점) 시간에northpole은 처리량을 1.3배 향상시키면서 46.9배 더 낮은 대기 시간을 제공하며 가장 낮은 l4 대기 시간(포인트 p4)에서 northpole은 36.0배 더 높은 처리량(토큰/초/카드)을 제공하면서 대기 시간을 여전히 5.1배 미만으로 유지합니다.

그림 2: (a)–(d) 패널은 에너지 효율성, 공간 및 시스템 지연 시간 측정 항목에서 현재 최첨단 gpu(7/5/4nm)와 비교하여 12nm northpole의 성능을 보여줍니다. 여기서 시스템 지연 시간은 다음과 같습니다. 사용자가 경험한 총 대기 시간입니다.

패널 (a)는 그림 1과 동일하며 점 p3에 라벨이 추가되었습니다. 패널 (a)와 (c)는 단일 gpu를 사용하는 반면, 패널 (b)와 (d)는 샤딩 기술을 사용하여 대기 시간을 줄일 수 있지만 에너지와 공간 효율성이 저하됩니다. 가장 낮은 gpu 대기 시간(h100, 포인트 p2)에서 northpole은 72.7배 더 나은 에너지 효율성 지표(토큰/초/w)와 15.9배 더 나은 공간 지표(토큰/초/트랜지스터)를 제공하면서도 여전히 2.5배 이상의 낮은 대기 시간을 유지합니다. 최고의 gpu 에너지 효율 지수(l4, 포인트 p1)에서 northpole은 46.9배 더 낮은 대기 시간과 2.1배 더 나은 공간 지수를 제공하는 동시에 gpu 공간 지표(a100, 포인트 p3) northpole은 20.3배 더 낮은 대기 시간과 5.3배 더 나은 에너지 효율성 지표를 제공하는 동시에 1.4배 더 나은 공간 지표를 제공합니다.

패널 (e)는 처리량(토큰/초/카드) 및 시스템 대기 시간 측정 항목에서 5nm l4 gpu와 관련된 12nm northpole의 성능을 보여줍니다. 가장 낮은 l4 대기 시간(포인트 p4)에서 northpole은 36.0배 더 높은 처리량을 제공하고, 가장 높은 l4 처리량(토큰당 50밀리초 미만, 포인트 p1)에서 northpole은 46.9배 더 낮은 대기 시간을 제공합니다. 각 에너지 효율성 지표를 계산하는 데 사용된 gpu 전력 소비는 표 i에 나와 있습니다. 다양한 배치 크기에 대한 실제 전력 소비를 측정할 수 있는 도구가 없기 때문에 모든 배치 크기에 동일한 전력이 사용되므로 에너지 효율성 지표가 과소평가될 수 있지만 정성적 결과는 여전히 유지됩니다.

북극 아키텍처

그림 3에서 볼 수 있듯이 northpole 프로세서는 12나노 공정 기술을 사용하여 제조되었으며, 220억 개의 트랜지스터를 보유하고 있으며, 795제곱밀리미터의 면적을 가지고 있습니다. 이 아키텍처는 두뇌에서 영감을 받아 실리콘에 최적화되었으며 컴퓨팅, 스토리지, 통신 및 제어를 포괄하는 10가지 보완 설계 공리에서 파생되어 northpole이 표준 ai 추론 작업에서 다른 아키텍처보다 훨씬 뛰어난 성능을 발휘할 수 있도록 해줍니다.보다 진보된 공정 기술로 제조된 프로세서와 비교해도 성능이 뛰어납니다.

northpole 아키텍처의 자세한 공리는 [11], [12]를 참조하세요. 간단히 말해 northpole은 256개의 모듈형 코어를 16×16 2차원 배열로 배열합니다. 각 코어에는 각각 int8, int4 및 int2 정밀도로 사이클당 2048, 4096 및 8192 작업을 수행하는 벡터 매트릭스 곱셈기(vmm)가 포함되어 있습니다. 핵심 계산에는 4방향, 32슬라이스 fp16 벡터 장치와 32슬라이스 활성화 함수 장치도 포함됩니다. 코어 어레이에는 총 192mb의 sram이 있으며 각 코어에는 0.75mb의 sram이 장착되어 있습니다. 온칩 메모리는 컴퓨팅 장치 및 제어 로직과 긴밀하게 연결되어 있으며 코어 메모리와 컴퓨팅 사이의 총 대역폭은 13tb/s입니다. 또한 각 코어에는 4개의 전용 네트워크 온 칩(noc)을 통해 매개변수, 명령, 활성화 값 및 부분 합계를 전달하기 위해 수평 및 수직으로 교차하는 4096개의 와이어가 있습니다.지연을 방지하기 위해 온칩 프레임 버퍼에는 32mb의 sram이 장착되어 코어 어레이의 온칩 계산에서 입력 및 출력 데이터의 오프칩 통신을 분리합니다.

그림 3: northpole 프로세서: 실리콘(왼쪽), 다이(가운데), 패키지 모듈(오른쪽).

장비

northpole은 그림 4에 표시된 pcie gen3 × 8 카드 설계의 프로토타입을 제작했으며, 기성 2u 서버에 16개의 카드를 설치하여 그림 5에 표시된 연구 프로토타입 추론 장치를 구성했습니다. 서버에는 2개의 intel xeon gold 6438m 프로세서가 포함되어 있으며 각 프로세서에는 32개 코어와 60mb 캐시, 2.2ghz 클럭이 있습니다. 이 시스템에는 512gb의 4800mhz ddr5 메모리도 함께 제공됩니다. 2개의 pcie gen5 × 16 버스가 각 서버 프로세서에 연결되어 총 256gb/s의 pcie 대역폭(양방향)을 제공합니다. 이 4개의 버스는 각 슬롯에 northpole 카드가 설치된 pcie 브리지를 통해 시스템의 16개 pcie 슬롯으로 확장됩니다. 이 16개의 northpole 카드는 사용 가능한 256gb/s pcie 대역폭의 최대 절반을 사용합니다.

그림 4: northpole pcie 카드.

그림 5: 16개의 northpole pcie 카드 설치를 보여주는 연구 프로토타입 장치의 분해도. northpole 카드는 표준 pcie 엔드포인트 모델을 통해 호스트와 통신하거나 각 카드의 추가 하드웨어 기능을 통해 서로 직접적이고 더 효율적으로 통신할 수 있습니다.

시스템은 red hat enterprise 8.9를 실행하며 northpole은 내장된 vfio 커널 드라이버를 사용하므로 사용자 공간 소프트웨어가 하드웨어를 관리할 수 있습니다. 시스템은 주소 변환 관리를 위해 iommu를 사용하고 가상 머신 또는 컨테이너 기술을 사용하여 애플리케이션을 실행하기 위한 장치 격리 및 가상화와 같은 보안 기능을 활성화합니다.

각 northpole 카드는 각 카드에 있는 dma 엔진을 통해 데이터를 수신하고 전송합니다. 이러한 dma 엔진은 독립적으로 작동하며 다양한 방법으로 동시에 텐서를 수신하고 전송할 수 있습니다. 첫 번째 방법은 호스트 프로그램이 dma 엔진을 통해 호스트 메모리에서 입력을 읽고 계산이 완료된 후 호스트 메모리에 텐서를 다시 쓰는 표준 pcie 엔드포인트 모델입니다. 두 번째 접근 방식은 각 카드의 추가 하드웨어 기능을 활용하여 northpole 카드가 런타임 시 호스트 메모리 간 전송이나 추가 소프트웨어 관리 없이 pcie를 통해 서로 직접 통신할 수 있도록 합니다. northpole 간 직접 통신을 통해 대형 모델이 여러 northpole 칩에 걸쳐 있을 수 있으며 순수 소프트웨어 관리 시스템으로 인해 발생하는 통신 대기 시간과 오버헤드가 줄어듭니다.

northpole 장치에 llm 매핑

그림 6에 표시된 llm 매핑 전략은 세 가지 주요 관찰에서 영감을 얻었습니다. 첫째, 충분히 큰 모델의 경우 전체 변환기 레이어는 int4 형식의 가중치, 활성화 및 kv 버퍼를 사용하여 단일 northpole 칩("w4a4")의 메모리에 완전히 들어갈 수 있는 반면 출력 레이어는 칩의 두 개에 들어갈 수 있습니다. 둘째, 가중치와 kv 캐시가 완전히 온칩에 있는 경우 런타임은 pcie gen3 × 8의 대역폭 내에 있는 레이어 간에 작은 내장 텐서를 전송하기만 하면 됩니다. 셋째, 기성 서버에 16개의 northpole pcie 카드를 설치하여 프로토타입 northpole 장치를 쉽게 조립할 수 있습니다.

이는 gpipe 스타일 파이프라인 병렬 처리를 사용하여 각 변환기 레이어를 해당 northpole 카드에 매핑하고, 텐서 병렬 처리를 사용하여 두 개의 northpole 카드에 출력 레이어를 분할하고, pcie gen3 × 8을 통해 레이어 간에 임베딩 텐서를 보내는 전략을 제안합니다.추론 중에 사용자 요청의 작은 배치(예: n 요청)는 m개의 동일한 마이크로 배치로 나누어지고 16개의 northpole 카드를 통해 파이프라인됩니다.

파이프라인 병렬 처리는 llm 교육(대기 시간 제한 없음)에 활용되었지만 추론에서의 사용은 각 파이프라인 단계 또는 파이프라인 버블의 유휴 시간을 줄이는 데 필요한 배치 크기로 인해 제한되었습니다. 예를 들어, 일부 연구에 따르면 효율적인 교육을 위해서는 마이크로 배치 m의 수가 파이프라인 단계 수의 약 4배가 되어야 한다는 사실이 밝혀졌습니다. 미니 배치 크기 n은 (a) 시스템에 필요한 토큰별 대기 시간 및 (b) 전체 미니 배치를 저장하기 위해 kv 캐시에 사용 가능한 메모리에 의해 제한됩니다. 낮은 대기 시간 컴퓨팅 및 13tb/s의 온칩 메모리 대역폭을 통해 northpole은 매우 낮은 토큰당 대기 시간을 달성할 수 있으므로 n을 선택할 때 제한 요소는 전체 kv 캐시 온칩을 저장하는 데 사용되는 메모리입니다. 더욱이 우리는 파이프라인 단계의 수와 동일한 마이크로 배치의 수 m이 파이프라인 유휴 시간을 무시할 수 있을 정도로 충분하다는 것을 발견했습니다.

본 논문에 보고된 실험에서 우리는 n = 28의 미니 배치 크기를 선택하고 m = 14개의 동일한 마이크로 배치로 나누어 각 northpole 카드 계산에 대해 마이크로 배치 크기를 2로 설정했습니다. 이러한 작은 배치 크기에서 효율적인 계산을 위한 아키텍처 설계 선택은 그림 1과 표 i에 표시된 효율성을 달성하는 데 핵심입니다.

llm 모델 및 훈련 방법

에이

llm 모델

우리 시스템을 테스트하는 데 사용된 모델은 오픈 소스 ibm granite-8b-code-base 모델을 기반으로 합니다. 이 모델은 숨겨진 레이어 크기가 4096이고 ffn 중간 레이어 크기가 있는 36개의 변환기 레이어가 포함된 80억 매개변수 변환기-디코더입니다. 14,336개, 어텐션 헤드 수는 32개, gqa(grouped query attention)를 사용한 키-값 헤드 수는 8개, 어휘 크기는 49,152개입니다. 16개의 northpole 카드가 있는 단일 서버에 맞추기 위해 우리는 14개의 변환기 레이어와 출력 레이어가 있는 모델의 30억 매개변수 버전을 사용하고 w4a4 정확도로 양자화했지만 그 외에는 구조가 변경되지 않았습니다.

특히 이 모델 구성은 레이어 수, 모델 어휘 크기 및 사용된 훈련 데이터만 다를 뿐 레이어별로 llama 3 8b[13] 및 mistral 7b[14]와 일치합니다.

완전한 정확성을 갖춘 훈련

양자화 후 원래 모델의 작업 정확도를 복원하기 위해 다음 절차를 채택하여 모델 가중치를 생성했습니다. 첫째, 기본 모델은 [4]의 레시피에 따라 전체 fp16 정확도를 사용하여 116개 언어로 된 1조 개의 코드 토큰을 기반으로 처음부터 훈련됩니다. 다음으로, 기본 모델의 출력 레이어 가중치와 입력, silu 활성화는 int8 양자화되었으며, 다른 모든 가중치, 선형 레이어 입력 및 행렬 곱셈 입력은 int4 양자화되었습니다. 마지막으로, 다음을 사용하여 학습률 8×10⁻⁵ 및 배치 크기 128로 학습 데이터의 python 언어 하위 집합에서 추가로 85억 개의 토큰에 대해 양자화 인식 학습을 수행하여 복구 후 정량화 정확도를 정량화했습니다. lsq 알고리즘. 양자화기를 활성화하는 단계 크기는 데이터에 빠르게 적응하는 데 도움이 되도록 훈련의 처음 250단계에서 학습 속도를 200배 증가시키는 웜 스타트를 사용하여 훈련됩니다.

gpu에서 실행되는 기본 fp16 모델과 northpole에서 실행되는 양자화 모델은 humanevalsynthesize-python에서 0.01(0.3001 gpu vs. 0.2922 northpole) 이내에서 pass@10 정확도를 달성했습니다. granite-8b-code-base 모델과 비교하면 전반적인 훈련이 줄어듭니다. 작업 정확도의 경계를 넓히기보다는 하드웨어 성능 특성화에 중점을 둡니다.

런타임 애플리케이션

추론 중에 그림 6에 표시된 것처럼 호스트 cpu에서 실행되는 고도로 파이프라인된 사용자 애플리케이션에 의해 토큰이 생성됩니다. 이 애플리케이션은 토크나이저 및 임베딩 레이어를 사용하여 텍스트를 입력 텐서로 전처리하고 입력 텐서를 장치의 첫 번째 northpole 카드에 넣습니다. , 장치의 마지막 northpole 카드에서 결과 출력 텐서를 수신하고, 디코더와 디토크나이저를 사용하여 출력 텐서를 후처리하고, 결과 토큰을 다음 입력으로 루프합니다. 사용자 애플리케이션은 사용자 인터페이스뿐만 아니라 프롬프트 사전 채우기와 같은 고급 최적화도 담당합니다.

신경망 워크로드를 northpole로 오프로드하기 위해 사용자 애플리케이션은 간단한 api를 사용하여 사용자 공간 런타임 라이브러리를 호출하고, 초기화 시 northpole 카드의 레이어 가중치와 kv 캐시를 구성하고, 런타임 시 입력 및 출력 텐서를 보내고 받습니다.가중치와 kv 캐시는 온칩 메모리에 유지되도록 구성되며 런타임 시 칩 외부로 스트리밍될 필요가 없습니다. 또한 런타임 라이브러리는 입력 데이터 또는 출력 데이터 수신기 부족으로 인해 northpole 코어가 정지되는 것을 방지하기 위해 온칩 프레임 버퍼를 관리합니다. 섹션 4에 설명된 대로 중간 텐서는 호스트 개입 없이 카드 간에 전달됩니다.

성과 결과

northpole 16카드 장치는 30억 매개변수 llm에서 초당 28,356개의 토큰 처리량을 달성했습니다. 이 llm의 시퀀스 길이는 2048(힌트 길이 1024개, 토큰 1024개 생성)로 구성되며 디코더는 그리디 샘플링을 사용합니다.

gpu와의 비교를 위해 저전력 추론을 위한 2개의 gpu(l4 및 l40s)와 고처리량 훈련을 위한 2개의 gpu(a100 및 h100)의 단일 카드 성능을 측정했습니다.모든 시스템은 동일한 llm 모델 및 구성을 실행합니다. northpole은 w4a4 정밀도로 실행되고 gpu는 최적의 w4a16 정밀도로 실행됩니다. 왜냐하면 우리가 아는 한 사용 가능한 w4a4 cuda 코어가 없기 때문입니다.gpu 실험에서는 gptq 양자화 모델을 활용하고 northpole과의 비교를 위해 vllm(버전 0.5.4) marlin 코어를 사용하여 벤치마킹했습니다. gptq 양자화를 사용하면 허용 가능한 정확도를 유지하면서 가중치 정밀도를 줄여 gpu에서 최적의 모델 추론 성능을 제공합니다. 또한 marlin 코어는 특히 희소하고 조밀한 행렬 곱셈을 처리할 때 행렬 작업을 최적화하는 데 사용됩니다. vllm 런타임을 벤치마킹하면 처리량과 대기 시간을 평가하여 특정 하드웨어 구성에 대한 최적의 모델 성능을 보장할 수 있습니다. 여러 gpu 카드를 사용한 실험에서는 nvlink를 통해 가능한 최소 지연 시간을 효과적으로 얻기 위해 사용 가능한 카드 수와 동일한 텐서 병렬성을 사용했습니다. 우리의 실험에 따르면 샤딩 기술은 대기 시간을 줄이지만 카드당 gpu 처리량은 감소하는 것으로 나타났습니다. northpole의 뛰어난 성능은 주로 거대한 온칩 메모리 대역폭에서 비롯되고, 이차적으로는 낮은 정확도에서 비롯된다는 점은 주목할 가치가 있습니다.

표 i은 카드별로 northpole 및 gpu 시스템에 대해 측정된 성능 결과를 보여줍니다. 기본 메트릭에는 아래에 정의된 처리량, 대기 시간, 공간 및 에너지 메트릭이 포함됩니다.

소규모 배치의 입력 프롬프트에 대해 생성된 총 토큰 수는 다음과 같습니다.

이 중 mmm은 마이크로 배치의 개수이고, tok_seq_len은 단일 사용자가 생성한 출력 토큰의 개수입니다. 시스템 처리량은 입력 프롬프트(토큰 생성)에 대한 응답으로 생성된 총 토큰 수를 프롬프트 사전 채우기 시간(프롬프트 시간) 및 토큰 생성 시간(토큰 생성 시간)을 포함하여 프롬프트를 처리하는 데 필요한 총 시간으로 나눈 값입니다.

처리량은 시스템 처리량을 시스템의 처리 카드 수로 나누어 카드별로 비교합니다.

지연 시간은 특정 사용자가 생성한 출력 토큰 간의 평균 시간을 측정한 것이며, 포함된 토큰이 처리 파이프라인을 통과하는 데 걸리는 시간과 생성된 총 토큰 수에 대해 분할된 프롬프트 사전 채우기 시간을 더한 것입니다.

마찬가지로 방정식 1, 2, 4를 결합하면 다음과 같습니다.

여기서 미니 배치 크기 = 미니 배치 크기 참고: 이는 각 사용자에게 표시되는 시스템 대기 시간입니다.

시스템의 카드 수로 정규화하여 [11]에 정의된 공간 및 에너지 메트릭을 확장하여 다양한 수의 카드를 가진 시스템을 비교할 수 있습니다. 결과 공간 및 에너지 지표는 카드당 처리량이며, 각각 카드당 프로세서 트랜지스터 수와 카드당 전력으로 정규화됩니다.

시스템 처리량이 시스템의 파이프라인 카드 수에 비례하여 확장되는 경우 카드 정규화가 상쇄되어 공간 및 에너지 측정 기준이 시스템의 카드 수에 따라 일정하게 유지됩니다. 일반적으로 시스템 처리량은 통신 및 동기화 오버헤드로 인해 카드 수에 따라 준선형적으로 확장됩니다.

결론적으로

우리는 다음과 같은 기여를 합니다:

우리는 doka northpole 장치의 연구 프로토타입을 시연했습니다.

우리는 llm과 같은 대규모 신경망 모델이 여러 northpole 프로세서에 효율적으로 분할될 수 있음을 보여줌으로써 단일 northpole 프로세서가 시각적 추론 작업(resnet50, yolo-v4)에서 더 나은 성능을 발휘한다는 것을 보여준 이전 작업을 확장합니다.

우리는 northpole의 고유한 아키텍처가 llm 추론에 매우 적합하여 낮은 대기 시간과 높은 에너지 효율성이라는 두 가지 목표에서 에지 및 데이터 센터 gpu보다 훨씬 뛰어난 성능을 발휘할 수 있음을 보여줍니다.

northpole 장치는 하나의 장치로 사용해야 하므로 처리량이 많은 애플리케이션에 가장 효율적입니다.

이 예비 문서는 에너지 효율성 최적화, 이에 상응하는 더 큰 northpole 장치에 더 큰 llm 매핑, northpole 아키텍처와 함께 최적화된 새로운 llm 모델, 미래 시스템 및 칩 아키텍처에 대한 추가 연구를 위한 발판을 제공합니다.