Qwen3.5-0.8B를 순수 어셈블리어로 구동해 봄
I ran Qwen3.5-0.8B in pure Assembly
핵심 요약
AMD EPYC CPU에서 어셈블리어만 사용하여 Qwen3.5-0.8B 모델을 구동하고 기존 Transformers 대비 높은 성능을 기록함.
- 어셈블리어 구현 — 런타임에 libc나 파이썬 없이 토큰화, 추론, 샘플링을 어셈블리어로 직접 처리함
- 성능 비교 — AMD EPYC 7B12에서 6.51 tokens/sec를 기록하여 Transformers의 4.34 tokens/sec를 상회함
- 최적화 방식 — BF16 가중치를 직접 읽어 처리하며 빌드 타임에만 파이썬을 사용하여 토큰화 테이블을 생성함

AMD EPYC 7B12에서 CPU 스레드 하나로 돌려보니까 6.51 tokens/sec 나오더라. Transformers 레퍼런스는 4.34 찍힘.
생성된 토큰 32개 전부 양쪽 다 똑같이 일치함.
Code: https://github.com/suayptalha/qwen3_5-assembly
X Post: https://x.com/suayptalha/status/2119254536283906205
토큰화, 모델 추론, 샘플링 전부 어셈블리로 돌아감. 런타임에 libc나 파이썬 같은 거 일절 안 씀. 파이썬은 빌드 타임에 토큰화 테이블 만드는 용도로만 씀.
Benchmark: 입력 토큰 19개, greedy decoding, 2회 실행. 어셈블리가 BF16 가중치를 직접 읽음. Transformers는 FP32로 로드해서 PyTorch 폴백 커널 썼음.

