H2-LLM: hybrid bonding 으로 NMP 연산량을 늘리고, channel 부터 정하는 dataflow 로 edge 의 low-batch LLM inference 를 가속하기
papers/3695053.3731008_복사본.pdf (17쪽, 본문 13쪽) · §5.1 p.7 = 논문이 그렇게 쓴 절·쪽(PDF 쪽 번호) · 해석 = 논문 내용에서 요약자가 끌어낸 설명 · 논문에 없음 = 배경지식·예시·요약자 계산 · 용어는 1 절 용어표의 뜻으로만 쓴다 · 그림은 누르면 크게 열린다0한눈에 보기
edge 의 LLM 서비스는 batch 가 1~수십으로 작아 decoding 이 memory-bound 다. 기존 NMP 는 PE 를 DRAM die 안에 넣어(in-die NMP) 연산량이 bandwidth 와 1~2 FLOP/Byte 비율밖에 안 되고, batch 가 조금만 커져도 이득이 사라진다 §3.1 p.3–4.
H2-LLM 은 DRAM die 를 logic die 위에 hybrid bonding 으로 쌓아 PE 연산량을 키우고, operator 마다 memory channel 을 먼저 묶는 data-centric dataflow 와 DSE 로 설계를 찾아 in-die NMP 대비 geomean 2.72× 빠르고 decoding energy efficiency 가 1.48× 높다 Abstract p.1.
2.72× 와 2.71× 는 원문 안에서 값이 다르다. Abstract·§1·§8 은 2.72×, §7.2 와 §7.3(Fig.13 설명)은 2.71× 로 쓴다. 어느 쪽이 맞는지는 원문에 명시 없음.
1배경: NMP, arithmetic intensity, hybrid bonding
LLM inference 는 prompt 를 한 번에 처리하는 prefill 과 token 을 하나씩 만드는 decoding 으로 나뉜다. decoding 은 weight 를 매 step 다시 읽으므로 batch 가 작으면 연산보다 memory bandwidth 가 속도를 정한다 §1 p.2.
NMP 는 memory channel 안에 PE 를 넣어 bank 를 동시에 읽어 bandwidth 를 늘리는 방식이고, 이 논문은 그 PE 를 어디에 두느냐(DRAM die 안 vs logic die)와 operator 를 어디에 둘지를 다룬다 §2.3 p.3.
1.1용어표
| 용어 | 정확한 뜻 (이 요약에서) | 기호 | 논문 원문 표기 |
|---|---|---|---|
| 1.1.1.1low-batch inference | 한 번에 처리하는 request 가 1~수십 개인 inference. 논문 실험은 batch 1·4·16 (혼합 실험은 4·8·16) | BS | "low-batch property (one to a few tens)" (§1 p.2), Fig.1 은 "a few tens (10-20)" |
| 1.1.1.2prefill · decoding | prefill = prompt token 전체를 한 step 에 처리, decoding = request 마다 token 하나씩 만드는 반복 step | – | "prefill stage", "decoding stage" (§1 p.2) |
| 1.1.1.3operator | transformer layer 안의 계산 단위. FC operator(Q·K·V·O·F1·F2·F3)와 attention operator(QK·SV) | – | "operators" (§2.1 p.2–3, Fig.2) |
| 1.1.1.4GEMM | 행렬 곱 $(M,K)\times(K,N)$. FC operator 는 GEMM 하나, attention operator 는 head 마다의 batched GEMM | $M, K, N$ | "GEMM operators", "batched GEMMs" (§4.2 p.6) |
| 1.1.1.5arithmetic intensity | operator 가 memory 에서 읽는 1 Byte 당 하는 FLOP 수 | FLOPs/Byte | Fig.3 x 축 (§3.1 p.4) |
| 1.1.1.6NMP · PE | Near-Memory Processing. memory channel 안에 연산기(PE)를 두어 bank 를 동시에 읽고 계산 | – | "NMP", "processing engines (PEs)" (§2.3 p.3) |
| 1.1.1.7in-die NMP | PE 를 DRAM die 안, bank 옆에 둔 NMP. 상용 HBM-PIM·GDDR6-AiM·LPDDR5-PIM 등 | – | "in-die NMP" (§1 p.2, 논문이 정의한 이름) |
| 1.1.1.8hybrid bonding (HB) | DRAM die 를 logic die 위에 쌓고 Cu-Cu 로 직접 접합하는 3D 집적 기술. 3 µm pitch 에서 110,000 연결/mm² | – | "hybrid bonding (HB)" (§3.2 p.4) |
| 1.1.1.9HB I/O · HB controller | HB I/O = bank 와 logic die 를 잇는 HB 핀 묶음, HB controller = 그 핀을 구동하는 logic die 의 controller | – | "HB I/O", "HB Ctrl." (Fig.5) |
| 1.1.1.10HB-NMP channel | DRAM die 를 logic die 위에 HB 로 쌓고 logic die 에 PE 를 둔 memory channel. "NMP channel" 이라고도 쓴다 | $PC_p$ | "HB-NMP channel" (§4.1 p.5), "NMP channel" |
| 1.1.1.11normal channel | DRAM die 하나만 있는 일반 memory channel. centralized processor 만 읽는다 | $NC$ (전부 묶어 virtual channel 하나) | "normal DRAM channels" (§4.1 p.5) |
| 1.1.1.12centralized processor | GPU·TPU 같은 중앙 가속기. 연산이 많은 operator 와 전체 scheduling 을 맡는다. 실험에서는 TPU-like | – | "centralized processor (xPU, etc.)" (§4.1 p.5) |
| 1.1.1.13CP (baseline) | NMP 없이 centralized processor 만 쓰는 비교 시스템. 연산량을 2 배로 줬다. 장치 이름과 구별해 "CP (baseline)" 으로 쓴다 | – | "Centralized processor only (CP)" (§7.1 p.10) |
| 1.1.1.14ID-NMP · ID-NMP+ | in-die NMP 비교 시스템. ID-NMP = Samsung LPDDR5-PIM 방식(PE 당 16 MAC @200 MHz), ID-NMP+ = AiM 방식 PE(16 MAC @1 GHz) | – | §7.1 p.10 |
| 1.1.1.15FPU · MAC | FPU = HB-NMP PE 안의 부동소수점 연산기, FPU 하나에 MAC(곱하고 더하기) 16 개 | – | "FPUs", "16 MACs" (§4.1 p.5, §7.1 p.10) |
| 1.1.1.16operator mapping | operator 를 어느 연산 엔진(centralized processor 또는 NMP PE)이 실행할지 정하는 것 | – | "operator mapping" (§3.3 p.4) |
| 1.1.1.17operator fission | operator 하나를 쪼개 일부는 centralized processor, 일부는 NMP PE 가 실행. weight 는 복제하지 않는다 | – | "operator fission" (§3.3 p.5) |
| 1.1.1.18compute-centric · data-centric dataflow | compute-centric = 엔진을 먼저 정하고 그 엔진 쪽 channel 에 operator 를 둔다(SpecPIM). data-centric = channel 을 먼저 묶고 엔진은 그 결과로 정한다(H2-LLM) | – | §3.3 p.5, §5.1 p.7 |
| 1.1.1.19MAG · MPG · operator tier | MAG = 차례로 실행하는 operator 묶음, MPG = MAG 안에서 서로 독립이라 channel 을 나눠 갖는 묶음, tier = MPG 안에서 의존 순서로 나눈 단 | $A_i$, $P_{(i,j)}$, $T^{(i,j)}_k$ | "Memory Access Group", "Memory Partition Group", "operator tiers" (§5.1 p.7–8) |
| 1.1.1.20GCMap · OCMap | GCMap = MPG → channel 집합 대응, OCMap = tier 안 operator → channel 집합 대응 | $GCMap_{A_i}$, $OCMap_{T}$ | Eq.3, Eq.6 (§5.1 p.7–8) |
| 1.1.1.21VPU | centralized processor 안의 vector processing unit. MPG 마다 따로 배정해 병렬 실행한다 | – | "vector processing units (VPUs)" (§5.3 p.8) |
| 1.1.1.22DSE | Design Space Exploration. hardware 설정과 dataflow 를 함께 탐색해 가장 빠른 설계를 찾는 과정 | – | "DSE framework" (§6 p.8) |
| 1.1.1.23decoding-heavy · prefill-heavy | decoding-heavy = prompt 와 생성 길이가 비슷한 workload(HE·SG), prefill-heavy = prompt 가 생성 길이보다 10~100 배 긴 workload(LB·LG) | – | §2.2 p.3, Table 1 |
| 1.1.1.24normalized speedup · energy efficiency | speedup = end-to-end latency 의 역수를 기준 시스템으로 나눈 값. energy efficiency 는 decoding 단계의 에너지 효율을 기준으로 나눈 값 | – | "Norm. Speedup", "decoding energy efficiency" (§7.2 p.11) |
1.2LLM layer 와 attention 변형
이 논문에서 (b) 와 (d) 가 중요하다. GQA·MQA 는 K·V head 하나를 여러 Q head 가 같이 쓰므로, attention 이 같은 KV cache 1 Byte 로 더 많이 계산한다. 그래서 attention operator 의 arithmetic intensity 가 오른다 §3.1 p.4. (d) 처럼 서로 독립인 operator 가 있으면 memory channel 을 나눠 동시에 돌릴 여지가 생기고, 5 절의 dataflow 가 이것을 이용한다 §3.3 p.4.
1.3arithmetic intensity 와 roofline
1.4나머지 용어
memory channel · bank
memory channel 은 processor 가 독립적으로 접근하는 memory 통로이고, 한 channel 안에 bank 여러 개가 있다 논문에 없음. 실험 시스템은 channel 8 개, channel 당 256 MB bank 16 개다 §7.1 p.10.HB-NMP PE 는 bank 하나와 짝이 되어 bank 를 동시에 읽는다 (§4.1 p.5)systolic array
곱셈기를 격자로 놓고 데이터를 옆으로 흘려 행렬 곱을 하는 연산 구조다 논문에 없음. 실험의 centralized processor 는 128×128 systolic array 8 개와 SIMD-128 VPU 8 개를 1 GHz 로 둔다 §7.1 p.10.prefill 같은 compute-bound operator 를 맡는다genetic algorithm
후보 설계(individual) 여러 개를 평가해 좋은 것을 남기고, 그것을 바꾸거나(mutation) 섞어(crossover) 다음 세대를 만드는 탐색 방법이다 논문에 없음.H2-LLM DSE 의 exploration engine (§6.2 p.9)geomean
여러 비율의 기하평균이다. 비율 몇 개가 아주 커도 산술평균보다 덜 끌려가 speedup 평균에 흔히 쓴다 논문에 없음.논문의 모든 평균 speedup 은 geomean (§7.2 p.10)2문제: in-die NMP 는 연산이 모자라고, 기존 dataflow 는 prefill 을 놓친다
① 상용 in-die NMP 는 bandwidth 를 외부 interface 의 4~16 배로 늘리지만 연산:bandwidth 비율이 1~2 라, batch 가 8 이상이거나 GQA·MQA 처럼 attention intensity 가 오르면 이득이 없다 §3.1 p.4.
② hybrid bonding 이 대안이지만 HB controller 가 logic die 면적을 먹어 연산과 bandwidth 를 trade-off 해야 하고 §3.2 p.4, 기존 dataflow 는 operator 를 고정 배치하거나 prefill 의 bandwidth 를 줄인다 §3.3 p.4–5.
2.1edge LLM 은 batch 가 작고 workload 가 다양하다
2.2① in-die NMP 의 연산량 부족
2.3② hybrid bonding 의 연산-bandwidth trade-off
"Therefore, balancing the computation-bandwidth trade-off intrinsic to HB technology is vital to fully unveil its acceleration potential, which is still lack of discussion."§3.2 p.4
HBM logic die 에 PE 를 두는 Duplex 도 연산량을 늘리지만, 논문은 HBM 의 전력 소모가 커서 edge 에 맞지 않는다고 쓴다 §3.2 p.4.
2.4③ 기존 dataflow 의 한계
고정 배치는 batch 가 커서 operator 마다 intensity 차이가 큰 cloud 에서는 통하지만, low-batch 에서는 NMP 를 다 쓰지 못한다 §3.3 p.4. compute-centric 탐색은 operator 를 엔진 쪽 channel 한 종류에만 둔다. 그래서 centralized processor 가 맡은 operator 는 normal channel 일부의 bandwidth 만 쓰고, edge processor 의 연산:bandwidth 비율이 500~1000 이라 compute-bound 였던 prefill operator 가 memory-bound 로 바뀔 수 있다 §3.3 p.5. decoding 을 충분히 가속하면 prefill 비중이 커지므로 prefill-aware 탐색이 필요하다는 것이 논문의 주장이다. weight 를 prefill·decoding 용으로 복제하는 방법(prefill-decoding disaggregation)은 edge memory 로는 감당하기 어렵다고 쓴다 §3.3 p.5.
3기법: HB-NMP 구조, data-centric dataflow, DSE
① 구조: centralized processor + normal channel + HB-NMP channel. HB-NMP channel 은 bank 마다 PE 하나와 HB controller 를 붙이고, channel 수·PE 연산량·HB bandwidth·SRAM buffer 크기를 설계 변수로 둔다 §4 p.5–7.
② dataflow: operator 에 channel 을 먼저 묶고(MAG → MPG → tier), 둘 다에 걸친 operator 는 fission 한다 §5 p.7–8. ③ 이 두 설계 공간을 genetic algorithm 으로 함께 탐색한다 §6 p.8–9.
3.1① 구조: H2-LLM 의 hardware
| 부품 | 하는 일 | 근거 |
|---|---|---|
| 3.1.2.1normal mode / NMP mode | HB-NMP channel 의 bank 는 normal mode 에서 centralized processor 가 외부 interface 로, NMP mode 에서 PE 가 HB controller 로 읽는다. row buffer 간섭을 막으려 한 번에 한 mode 만 켠다 | §4.1 p.5 |
| 3.1.2.2input global buffer | 입력 tensor 를 bank 마다 복제하지 않도록 모든 PE 가 공유 | §4.1 p.5 |
| 3.1.2.3NoC 없음 | 실행 흐름에 PE 끼리 통신이 없어 NoC 를 빼고 그 면적을 연산에 준다 | §4.1 p.5 |
| 3.1.2.4FPU 는 MAC 만 | softmax·normalization 은 병렬성이 낮고 element-wise 연산은 결과 병합 단계에 fuse 되므로, GEMM 아닌 operator 는 centralized processor 가 맡는다 | §4.3 p.6 |
3.2HB-NMP channel 안에서 GEMM 을 나누는 법 (Eq.1)
실행은 offloading 방식이다. centralized processor 가 입력을 HB-NMP channel 들에 뿌리고(Step 1), PE 들이 동시에 계산한 뒤(Step 2), centralized processor 가 결과를 읽어 합친다(Step 3) §4.2 p.5. weight 가 크므로 $M$ 은 나누지 않고 $K$ 와 $N$ 만 channel 에 나눈다. $K$ 를 많이 나누면 partial sum 을 모아 합쳐야 하고, $N$ 을 많이 나누면 같은 입력을 여러 channel 에 복제해야 한다 §4.2 p.6.
계산기: Eq.1 로 $(T_K, T_N)$ 고르기
입력값과 전송 시간은 예시다 논문에 없음. 논문은 $B_l$, $B_s$ 값을 밝히지 않았다. 기본값은 LLaMA3 8B 의 F2(down projection, $K=14336$, $N=4096$) · batch 4 · 8 channel 이고, 2 의 거듭제곱 쌍만 본다.
command interface 4 종과 hardware 설계 공간
| command | 하는 일 |
|---|---|
| 3.2.4.1Mode Change | NMP 실행 앞뒤에 넣는 memory barrier. 시작 command 는 tile 크기를 실어 buffer offset 을 만든다 |
| 3.2.4.2Near-Memory Computation | channel 의 모든 PE 를 command 하나로 구동. weight tile 하나의 계산 단위(coarse-grained)이고 NMP controller 가 세부 명령으로 푼다 |
| 3.2.4.3Input Global Buffer Data Movement | bank → input global buffer 로 입력 tile 이동 |
| 3.2.4.4Local Buffer Data Movement | PE 의 weight/output buffer ↔ 자기 bank 이동. 발행 순서를 조절해 계산과 weight load 를 겹친다 |
출처: §4.3 p.6
hardware 설계 공간은 세 축이다. ① HB-NMP channel 수(normal channel 과의 배분) ② PE 구조(HB I/O bandwidth, PE 당 MAC 수, 동작 주파수. 같은 연산량이면 낮은 주파수를 골라 에너지를 줄임) ③ input global/weight/output buffer 크기 §4.4 p.6–7. 실험 범위는 5 절의 Table 5 다.
3.3② data-centric dataflow: channel 을 먼저 묶는다
compute-centric 방식은 엔진을 먼저 정하므로, operator 의 weight 가 normal channel 이나 NMP channel 한쪽에만 놓인다. data-centric 방식은 operator 마다 어느 channel 들에 weight 를 둘지 먼저 정하고, 엔진은 그 결과로 따라 정해진다 §5.1 p.7. 아래 그림이 둘의 차이다.
channel 묶기는 세 단계다. 단계마다 묶음이 한 층씩 작아진다 §5.1 p.7–8.
| 단계 | 무엇을 정하나 | 식 |
|---|---|---|
| 3.3.3.1Step 1 MAG 나누기 | layer 의 operator 집합 $V$ 를 순서 있는 묶음 $A_0\preceq\dots\preceq A_{M-1}$ 로 나눈다. $A_i\preceq A_j$ 는 $A_i$ 의 operator 가 $A_j$ 에 의존하지 않는다는 뜻. 같은 입력을 쓰는 operator 는 무작위로 합쳐 fission 후보를 만든다. MAG 는 처음에 모든 channel 을 쓴다 | Eq.2 |
| 3.3.3.2Step 2 coarse-grain binding | MAG 안의 weakly connected component 하나하나가 MPG $P_{(i,j)}$ 다. MPG 마다 channel 집합을 준다. 채널 집합 $C=\{PC_0,\dots,PC_{P-1},NC\}$ 이고 normal channel 은 전부 virtual channel $NC$ 하나로 본다 | Eq.3 GCMap |
| 3.3.3.3제약 | MPG 끼리 channel 이 겹치지 않고(channel exclusive), 모든 channel 이 어느 MPG 에든 쓰인다(channel utilization) | Eq.4·5 |
| 3.3.3.4Step 3 fine-grain binding | MPG 를 의존 순서로 tier $T^{(i,j)}_k$ 로 나누고, tier 안 operator 마다 MPG 의 channel 중 일부를 준다. 같은 두 제약을 따른다 | Eq.6 OCMap |
출처: §5.1 p.7–8
3.4엔진 정하기와 실행 순서
channel 이 정해지면 엔진이 따라 정해진다. prefill 은 prompt 가 수백~수천 token 이라 모두 centralized processor 가 실행한다. decoding 에서 operator 가 normal channel 에만 있으면 centralized processor, NMP channel 에만 있으면 NMP PE 가 실행하고, 둘 다에 걸치면 fission 한다. GEMM 은 출력 차원 $N$ 을 둘로 나누고, attention 은 GEMM 단위로 나눠 두 엔진이 서로 간섭하지 않는다 §5.2 p.8.
dataflow 설계 공간은 MAG 나누기, MAG 마다 GCMap, tier 마다 OCMap, fission operator 의 두 엔진 분할 비율 넷이다 §5.4 p.8. 논문은 이 추상화가 H2-LLM hardware 에 묶이지 않고 NMP 이종 가속기 전반에 쓸 수 있다고 쓴다 §5 p.7.
3.5③ DSE framework: genetic algorithm 으로 함께 찾기
유전 연산 OP1~OP5 와 compile 흐름
| 연산 | 남기는 것 | 다시 뽑는 것 |
|---|---|---|
| 3.5.2.1OP1 re-sample | 없음 | hardware + dataflow 전부 |
| 3.5.2.2OP2 mutate | hardware | dataflow 전부 |
| 3.5.2.3OP3 mutate | hardware, MAG | GCMap, OCMap, 분할 비율 |
| 3.5.2.4OP4 mutate | hardware, MAG, GCMap | OCMap, 분할 비율 |
| 3.5.2.5OP5 crossover | 두 부모 중 한쪽 hardware, 겹치지 않는 MAG 를 번갈아 | 남은 operator 의 MAG, GCMap, OCMap, 분할 비율 |
출처: §6.2 p.9
workload 가 여러 개면 individual 마다 모든 workload 의 dataflow 를 뽑고 가중 평균 성능으로 고른다 §6.2 p.9. compile 은 operator 별 실행 흐름 생성(NMP operator 는 Eq.1 로 분산, 수작업 template 으로 tile 크기 결정) → layer 실행 흐름에 동기화 삽입 → centralized processor 의 controller 로 전달 순이다. template 자동 생성은 향후 과제라고 쓴다 §6.3 p.9.
4구현과 실험 방법
실제 칩이 아니라 시뮬레이션이다. NMP PE 는 Ramulator2 를 확장해, centralized processor operator 는 Tileflow 성능 모델로 평가해 결과를 합친다 §7.1 p.10.
FPU 는 Chisel 로 구현해 40 nm 로 합성했고, HB 면적은 저자들의 실제 tape-out 값을 쓴다. DSE framework 는 공개돼 있다(github leesou/H2-LLM-ISCA-2025) §7.1 p.10 A p.13.
면적·에너지 수치와 artifact
| 항목 | 값 | 근거 |
|---|---|---|
| 4.1.1FPU 면적 (0.4/0.6/0.8/1.0 GHz, 40 nm) | 0.31/0.44/0.59/0.77 mm² | §7.1 p.10 |
| 4.1.2SRAM 밀도 | 2.72 mm²/MB | §7.1 p.10 |
| 4.1.3NMP PE 하나의 면적 | 6.76 mm² | §7.1 p.10 |
| 4.1.4HB I/O 핀 속도 | 0.4 Gbps | §7.1 p.10 |
| 4.1.5HB 핀 128/256/512/1024 → PE 당 bandwidth | 6.4~51.2 GB/s | §7.1 p.10 |
| 4.1.6그때 HB controller 가 PE 면적에서 차지하는 비율 | 4.6/10.7/19.7/40.2% | §7.1 p.10 |
| 4.1.7MAC 에너지: centralized processor (10 nm) | 0.682 pJ | §7.1 p.10 |
| 4.1.8MAC 에너지: HB-NMP (0.4~1.0 GHz) | 0.974~1.365 pJ | §7.1 p.10 |
| 4.1.9MAC 에너지: in-die NMP (200 MHz / 1 GHz) | 1.172 / 1.849 pJ | §7.1 p.10 |
| 4.1.10memory access 에너지: LPDDR5 interface / HB I/O | 7.0 / 0.88 pJ/bit | §7.1 p.10 |
| 4.1.11SRAM access 에너지 | 0.027 pJ/bit | §7.1 p.10 |
artifact 는 onnx 기반 model parser 와 genetic algorithm exploration engine 을 담는다. 다만 data privacy 문제로 시뮬레이터를 제공하지 못해 artifact 는 대략적인 성능 모델을 쓰고 에너지 평가는 건너뛰며, 결과가 논문과 조금 다를 수 있다고 밝힌다 A.6 p.14.
5평가
OPT 6.7B(MHA)·LLaMA3 8B(GQA)·PaLM 8B(MQA), FP16, batch 1/4/16, 4 dataset 의 평균 길이로 CP (baseline)·ID-NMP·ID-NMP+ 와 비교했다. H2-LLM 은 Table 5 의 밑줄 친 고정 설계 하나로 비교한다 §7.1–7.2 p.9–10.
ID-NMP+ 대비 전체 2.71×, decoding-heavy 3.81×, prefill-heavy 1.94× 빠르고 §7.2 p.11, 같은 hardware 에서 dataflow 만 바꿔도 FC-NMP·CC-NMP 대비 1.37×·1.11× 다 §7.3 p.11.
5.1실험 설정
| 항목 | 설정 | 근거 |
|---|---|---|
| 5.1.4.1centralized processor | TPU-like. 128×128 systolic array 8 개 + SIMD-128 VPU 8 개 @1 GHz, on-chip SRAM 128 MB | §7.1 p.10 |
| 5.1.4.2memory system | channel 8 개, channel 당 256 MB bank 16 개, 외부 interface LPDDR5-6400 | §7.1 p.10 |
| 5.1.4.3CP (baseline) | NMP 가 연산을 더 주는 것을 감안해 centralized processor 연산량을 2 배 | §7.1 p.10 |
| 5.1.4.4ID-NMP | PE 가 bank 마다 하나, 6.4 GB/s, 16 MAC @200 MHz. channel 당 102.4 GFLOPS · 102.4 GB/s | §7.1 p.10 |
| 5.1.4.5ID-NMP+ | AiM PE (16 MAC @1 GHz). 상용 in-die NMP 중 최대 연산량. ID-NMP(+) 는 모든 channel 이 NMP channel 이고, 나머지 설정은 H2-LLM 과 같다 | §7.1 p.10 |
| 5.1.4.6dataflow | ID-NMP·ID-NMP+·H2-LLM 모두 data-centric dataflow 를 쓴다 | §7.2 p.10 |
| 5.1.4.7DSE 예산 | genetic algorithm 100 회 반복, 세대당 5k individual, top-50 선택 | §7.2 p.10 |
| 5.1.4.8workload | token 수는 Table 1 네 dataset 의 평균, batch 1/4/16 | §7.1 p.9 |
고정 설계의 숫자를 풀면, PE 하나는 FPU 8 × MAC 16 × 0.6 GHz × 2 FLOP = 153.6 GFLOPS, channel 하나(PE 16 개)는 약 2.46 TFLOPS 와 HB bandwidth 409.6 GB/s 다. 연산:bandwidth 가 6 FLOP/Byte 로 Table 2 의 in-die NMP(1~2)보다 크다. centralized processor 는 약 262 TFLOPS, LPDDR5-6400 8 channel 의 외부 bandwidth 는 Table 2 의 "8× external" 에서 역산하면 102.4 GB/s 다 논문에 없음 (요약자 계산).
5.2baseline 과 비교
5.3dataflow 만 바꿔 보기
Fig.15 · Fig.16 · Fig.17 — 설계를 다 탐색하면, 동기화·전송 overhead
5.4설계 공간 분석 (LLaMA3 8B)
논문은 모델들의 경향이 비슷해 LLaMA3 8B 로 분석하고, 결과를 takeaway 6 개로 정리한다 §7.4 p.12.
Fig.19 · Fig.20 · Fig.21 — buffer 크기, channel 배분, centralized processor 크기
6결론과 한계
논문의 결론은 H2-LLM 이 edge low-batch LLM inference 용 첫 hybrid bonding 기반 이종 가속기이며, hybrid bonding 의 연산-bandwidth trade-off 를 설계 공간에 넣고 data-centric dataflow 로 이종 구조를 활용해, in-die NMP 이종 가속기 대비 geomean 2.72× 빠르고 energy efficiency 가 1.48× 라는 것이다 §8 p.13.
논문에 limitation 절은 없다. 본문에 적힌 향후 과제는 NMP operator template 의 자동 생성뿐이다 §6.3 p.9. 아래는 요약자가 정리한 한계다 논문에 없음.
| 한계 | 근거 |
|---|---|
| 6.1.1모든 결과가 시뮬레이션이다. HB 면적은 tape-out 값이지만 H2-LLM 전체 칩은 만들지 않았고, artifact 에는 시뮬레이터가 빠져 있다 | §7.1 p.10, A.6 p.14 |
| 6.1.2prefill 은 언제나 centralized processor 가 실행한다. prefill-heavy 에서 배율이 decoding-heavy 의 절반 수준(1.94× vs 3.81×)이고, Fig.21 처럼 성능이 centralized processor 크기에 크게 좌우된다 | §5.2 p.8, §7.2 p.11, §7.4 p.13 |
| 6.1.3workload 는 dataset 평균 길이를 batch 에 고정한 것이다. 실제 request 도착·길이 분포와 continuous batching, KV cache 가 자라는 동안의 재배치는 다루지 않는다(혼합 실험 Fig.11 은 네 dataset 을 고르게 섞은 것) | §7.1 p.9, §7.2 p.11 |
| 6.1.4context 는 2048 로 잡았다. 긴 context 에서 KV cache 가 channel 용량을 얼마나 차지하는지는 capacity checker 로 거르기만 하고 따로 분석하지 않는다 | §2.2 p.3, §6.2 p.9 |
| 6.1.5energy efficiency 는 decoding 단계만 잰다. end-to-end 에너지나 HB 적층·logic die 의 제조 비용·수율은 비교하지 않는다 | §7.2 p.11 (비용은 §3.2 에서 "less advanced logic technology" 로 언급만) |
| 6.1.6요약자 계산으로 실험 centralized processor 는 약 262 TFLOPS / 102.4 GB/s ≈ 2,560 FLOP/Byte 로, 논문이 든 edge processor 비율 500~1000 보다 크다. 이 차이가 prefill bandwidth 논리(§3.3)의 크기에 주는 영향은 원문에 명시 없음 | §3.3 p.5, §7.1 p.10 (계산은 4·5 절) |
| 6.1.7genetic algorithm 은 최적을 보장하지 않는다. 탐색 예산(100 회 × 5k)에 대한 수렴 분석이 없다 | §7.2 p.10 |
7관련 연구
논문은 관련 연구 절을 따로 두지 않고, 2.3 절(NMP 이종 가속기)과 Table 2·3 으로 비교한다 §2.3 p.3 §3 p.3–5.
Table 3 의 비교 다섯 시스템 중 data-centric·prefill-aware 탐색과 flexible fission 을 함께 하는 것은 H2-LLM 뿐이다 §3.3 p.5.
관련 연구 한 줄씩
| 연구 | 한 일 | H2-LLM 과 차이 |
|---|---|---|
| 7.2.1Samsung HBM-PIM + MI100 | 모든 FC 를 NMP 로 보내 single-batch GPT-J 6B 가속 | in-die NMP, FC 고정 배치 (§2.3 p.3) |
| 7.2.2SK Hynix GDDR6-AiM | MHA 를 NMP, FC 를 GPU 로 | in-die NMP, 고정 배치 (§2.3 p.3) |
| 7.2.3AttAcc · NeuPIMs | NMP HBM 으로 large-batch cloud 의 MHA 가속. AttAcc 는 FFN 고정 fission | cloud·HBM 대상, 고정 배치 (§2.3 p.3, Table 3) |
| 7.2.4SpecPIM | speculative inference 용으로 centralized 가속기와 NMP 사이 mapping 탐색 | compute-centric, prefill-unaware, fission 없음 (§3.3 p.4–5) |
| 7.2.5Duplex | HBM logic die 에 PE 를 두어 연산량 증가 | HBM 전력 때문에 edge 에 부적합하다고 논문은 쓴다 (§3.2 p.4) |
| 7.2.6LPDDR5-PIM · LPDDR5X-AiM | on-device LLM 용 개념 제품 | in-die NMP, 연산:bandwidth 1~2 (§2.3 p.3, Table 2) |
| 7.2.7기존 HB-NMP | 추천 모델·vision 모델 가속에 hybrid bonding NMP 적용 | LLM 과 연산-bandwidth trade-off 탐색은 아님 (§3.2 p.4) |
8세미나 발표 대본 (약 19 분)
Fig.1~21 과 실험 설정 Table 을 슬라이드 순서대로 놓고, 슬라이드마다 말할 내용을 2~4 문장으로 적었다. Eq.1 유도·command 세부·유전 연산 종류는 빼고, 문제 → 설계 → 실험 환경 → 평가 흐름만 남겼다.
발화문은 요약자가 쓴 것이고 논문에 없음, 수치와 주장은 원문에서 확인한 것만 넣었다. 각 슬라이드 옆 시간은 권장 분량이다.