TL;DR
TensorSharp와 llama.cpp를 3× RTX PRO 6000 Blackwell GPU에서 GLM-5.2-UD-IQ2_XXS로 비교한 결과, 짧은 prompt의 pp128에서는 llama.cpp가 276.5 t/s로 앞섰다. 그러나 pp2048에서는 TensorSharp가 기본 설정 918.9 t/s, ubatch=2048 설정 1145.8 t/s를 기록해 각각 20.4%, 50.2% 높은 처리량을 냈다. GLM-5.2의 256개 routed expert와 top-8 routing에서는 큰 micro-batch가 Expert별 GEMM padding을 줄여 GPU 활용률을 높이는 반면, 짧은 입력에서는 managed/native 전환과 154880 차원 logits 복사 비용이 커진다. Decode 성능은 TensorSharp가 약 4% 앞서 긴 prefill에서 가장 큰 차이가 나타났다.
주요 논점
GLM-5.2의 MoE 구조에서는 큰 micro-batch가 각 Expert의 GEMM 타일을 더 잘 채우므로 긴 prompt에서 TensorSharp가 llama.cpp보다 높은 prefill 처리량을 기록했다는 입장입니다.
TensorSharp의 우위가 모든 입력 길이에 적용되는 것은 아닙니다. 짧은 prefill에서는 관리형 코드와 native 코드 사이의 전환, 입력 업로드, 대형 logits 복사 비용 때문에 llama.cpp가 더 빠르고, Decode 차이도 약 4%에 그쳤습니다.
합의점 vs 논쟁점
합의점
- 동일한 장비와 모델을 사용한 비교에서 짧은 prefill과 긴 prefill의 성능 순위가 달라졌습니다. pp128에서는 llama.cpp가 앞섰지만 pp2048과 pp4096에서는 TensorSharp가 앞섰습니다. 이 교차점은 단일 평균 처리량만으로 엔진 성능을 판단하기 어렵게 만듭니다.
- GLM-5.2의 256개 routed expert와 top-8 routing은 micro-batch 크기에 민감한 계산 패턴을 만듭니다. 512토큰 micro-batch에서는 Expert당 평균 약 16개 행만 처리해 GEMM padding이 발생하고, 더 큰 묶음에서는 GPU 활용률이 높아집니다.
실용적 조언
- GLM-5.2처럼 MoE Expert 수가 많은 모델을 평가할 때는 pp128 같은 짧은 입력과 pp2048·pp4096 같은 긴 입력을 분리해 측정해야 합니다. TensorSharp에서는 ubatch=2048 설정을 별도로 시험해 긴 prefill에서 1145.8 t/s를 기록한 결과를 확인할 수 있습니다. 다만 실제 사용 패턴이 짧은 요청 중심이면 llama.cpp의 고정 비용 우위까지 함께 비교해야 합니다.
섹션별 상세
용어 해설
- Mixture of Experts(MoE)
- — MoE는 하나의 큰 모델을 여러 Expert로 나누고 입력마다 일부 Expert만 선택해 계산하는 구조입니다. GLM-5.2에서는 256개 routed expert 중 top-8을 선택하므로, 토큰 묶음의 크기에 따라 각 Expert가 처리하는 행 수와 GPU 행렬 연산 효율이 달라집니다.
- 일반 행렬 곱셈(GEMM)
- — GEMM은 행렬 곱셈을 수행하는 GPU 연산으로, Transformer의 선형층과 Expert 계산에서 핵심 처리량을 좌우합니다. 각 Expert에 배정된 행이 적으면 GPU 연산 타일을 채우지 못한 padding이 늘어나 실제 하드웨어 활용률이 낮아집니다.
- 마이크로 배치(micro-batch)
- — micro-batch는 한 번에 GPU로 넘겨 처리하는 토큰 묶음의 크기입니다. TensorSharp의 ubatch=2048 설정처럼 묶음을 키우면 MoE Expert마다 더 많은 행을 모아 GEMM 타일을 채울 수 있지만, 짧은 입력에서는 고정 비용을 상쇄하지 못할 수 있습니다.
- 프리필(prefill)
- — prefill은 사용자가 입력한 프롬프트 전체를 먼저 병렬 처리해 다음 생성에 필요한 상태를 만드는 단계입니다. 이 단계의 pp128부터 pp4096까지 처리량을 비교한 결과, 입력 토큰이 약 1K를 넘으면 TensorSharp의 큰 micro-batch가 GPU 활용도를 높여 성능 우위를 만들었습니다.
- 로짓(logits)
- — logits는 모델이 다음 토큰 후보마다 계산한 원시 점수입니다. 이 비교에서는 154880 차원의 logits를 호스트 쪽으로 복사하는 비용이 짧은 prefill에서 전체 실행 시간의 큰 비중을 차지해 llama.cpp의 상대적 우위를 키웠습니다.
언급된 도구
GGUF 모델을 실행하는 native .NET LLM inference engine이며 콘솔 애플리케이션과 웹 기반 chatbot 인터페이스를 제공합니다. 이 비교에서는 GLM-5.2 추론과 benchmark harness에 사용됐습니다.
GGUF 모델 추론 성능을 비교한 기준 엔진입니다. llama-bench로 pp와 tg 처리량을 측정해 TensorSharp와 같은 장비에서 대조했습니다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.