AMD($AMD)와 메타($META)가 파이토치에서 AMD 그래픽처리장치(GPU)의 연산을 최적화하는 FlyDSL 연동 결과를 공개했다. 단일 AMD 인스팅트 MI355X의 vLLM 시험에서 MXFP4 조건의 요청 전체 성능은 ATen 기준 최대 3.01배로 측정됐다.
두 회사가 10월 21일 공개한 기술 보고서에는 FlyDSL을 인스팅트 MI350 시리즈의 기존 파이토치 연산자에 연결하는 방법과 성능 측정 결과가 담겼다. 이용자는 지원되는 연산에 별도 맞춤형 커널을 직접 호출하지 않고 FlyDSL을 적용할 수 있다.
지원 연산에는 밀집·그룹 행렬곱(GEMM), 어텐션, MXFP8·MXFP4 스케일드 행렬곱, RMSNorm, TopK가 포함된다. 지원 범위는 AMD GPU에서 쓰는 기존 파이토치 연산자 경로에 FlyDSL을 연결하는 방식으로 구성됐다.
FlyDSL은 GPU 연산 코드를 작성하는 도구다. 일부 행렬곱 구현은 파이토치 컴파일 기능인 torch.compile에서 선택할 수 있고, AMD의 GPU 소프트웨어 체계 ROCm에서 어텐션 연산을 처리하는 AOTriton에도 FlyDSL 커널이 추가됐다. 지원하지 않는 입력은 기존 파이토치 구현으로 처리한다.
커널 단위 시험은 MI355X에서 진행됐다. BF16 밀집 행렬곱 15개 입력 형태의 속도는 각 형태에서 더 빨랐던 기존 ATen 또는 Triton 구현과 비교한 기하평균 1.10배였다.
MXFP8과 MXFP4 행렬곱은 각각 17개 입력 형태에서 ATen 대비 1.58배, 1.68배로 측정됐다. 이 결과는 연산자 단위 실행 성능을 나타낸다.
커널 시험에는 컴파일과 초기 자동 조정 시간이 포함되지 않았다. MXFP 시험에는 이미 변환된 입력이 사용됐다.
실제 추론 요청을 처리하는 vLLM A/B 시험도 단일 MI355X에서 진행됐다. 시험 대상 모델은 Llama-3.1-8B-Instruct, Qwen3-32B, Llama-3.3-70B-Instruct였다.
보고서가 제시한 vLLM 시험의 최대 요청 전체 성능 향상률은 BF16 1.13배, MXFP8 2.04배, MXFP4 3.01배였다. 모델과 동시 요청 수에 따라 결과는 달라졌다.
정밀도별 비교 경로는 달랐다. BF16은 ATen·Triton, MXFP8은 ATen(hipBLASLt), MXFP4는 ATen을 기준으로 삼았다. MXFP4 시험에서는 lm_head가 양자화 대상에 포함되지 않았다.
MXFP8과 MXFP4는 각 시험 조건에서 한 차례씩 측정됐다. 보고서는 이 때문에 두 시험의 결과 변동 폭을 충분히 평가하지 못했다고 밝혔다.
커널 단위 결과와 vLLM 결과는 측정 범위가 다르다. 전자는 개별 연산자의 실행을, 후자는 요청 처리 성능을 다루므로 한 수치로 묶어 해석할 수 없다.
미국 산호세에서 10월 20~21일 열린 행사에는 3500명 이상이 참석했다고 파이토치 재단(PyTorch Foundation)이 사후 정리에서 밝혔다. 이번 AMD 발표는 새 GPU 공개보다 기존 GPU에서 파이토치 연산 경로를 확장하는 내용에 초점을 맞췄다.
AMD는 행사 사전 일정에 AMD GPU용 고성능 Triton GEMM 구성을 JIT 컴파일 전에 예측하는 분석 모델 PerfModel 세션도 올렸다. 행사 프로그램 안내에 이 세션이 포함됐지만, 재단의 사후 정리는 FlyDSL 업데이트를 기록하고 PerfModel의 성능 결과는 싣지 않았다.
앞서 본지는 구글과 아마존이 기존 파이토치 앱을 각사의 AI 칩에서 실행하도록 돕는 도구를 공개했다고 보도했다. 이번 FlyDSL 발표는 AMD GPU에서 기존 파이토치 연산자의 실행 경로를 넓히는 별도 내용이다.
AMD는 행사 첫날 인텔($INTC)과 파이토치의 x86 CPU 최적화 경로를 oneDNN으로 통합하기로 했다. 본지가 앞서 전한 협력에서 AMD는 ZenDNN 최적화를 oneDNN에 통합할 계획이라고 밝혔다. 이는 이번 GPU용 FlyDSL 연동과는 별개의 CPU 소프트웨어 협력이다.
<Copyright ⓒ TokenPost, unauthorized reproduction and redistribution prohibited>
Most Popular