話題의 Strata를 사용해 RADEON RX9060XT로 Qwen3.8-Flash-Next를 구동해 본 경험 (2)
요약
RADEON RX9060XT 환경에서 Qwen3.8-Flash-Next 모델을 구동하며 성능 튜닝 경험을 공유합니다. 특히 prefill 속도 저하와 RADEON 환경의 레그레션 문제를 발견하고, `STRATA_HIP_WMMA` 등의 환경 변수 설정으로 성능 개선 방안을 제시했습니다.
핵심 포인트
- RADEON 환경에서 Qwen 모델 구동 시 약 3할 속도 저하 발생.
- prefill 속도가 느린 것이 문제이며, CPU 병목 현상이 의심됨.
- `STRATA_HIP_WMMA=1` 등 환경 변수 설정으로 성능을 개선할 수 있음.
- 프로파일 저장/불러오기 설정을 통해 Expert 모델의 효율성을 높일 수 있음.
YouTube에 올린 영상의 추가 내용입니다.
- Ryzen5-5600 + DDR4-128G
- RADEON RX9060XT-16GB
- 모델은 Qwen3.8-Flash-Next의 UD-IQ4_XS 버전
- 128k Context
솔직히 IQ3_S보다 약 3할 정도 느리고, 애초에 메인 메모리가 96G 이상 필수인데도 불구하고, 품질적인 측면에서 4비트 양자화는 필수라고 생각합니다.
그럼에도 후자의 WMMA 옵션 등을 활성화하면 디코딩(decode) 시 약 30t/s 정도는 나옵니다.
오히려 프리필(prefill)이 느린 것이 문제입니다. prefill 500t/s라니, 장난하십니까. CPU가 발목을 잡고 있는 것 같습니다.
RADEON 환경에서 약 3할 정도 속도 저하를 일으키는 레그레션(regression)이 발생했습니다. 아마 다음 버전에서 수정될 것이라고 생각합니다.
set STRATA_SH_STREAM=0
이렇게 설정하여 회피할 수 있습니다.
아직 이렇게 만들어진 소프트웨어로 세밀한 튜닝을 하는 것도 무의미하지만, '이건 기본값으로 해줬으면 좋겠다…' 싶은 옵션이 어째서 기본적으로 꺼져 있는지 모르겠습니다.
제대로 작동하지 않기 때문에 설정들이 노이즈가 되어 성능이 급격히 떨어집니다.
WMMA는 RDNA3(RX7000 시리즈) 이상에서 지원하는 (해야 할) 곱셈-누적(積和算, MAC) 명령어인데, 왠지 명시적으로 활성화하지 않으면 안 되는 것 같습니다.
set STRATA_HIP_WMMA=1
set STRATA_PREFILL_RING=96
set STRATA_SELECT_WMMA=1
이렇게 하면 약 3할 정도 빨라집니다. STRATA_PREFILL_RING은 공식 문서에 뭔가 96으로 하라고 적혀있습니다.
후자는 약 1% 정도 빨라진다고 하는데 무슨 말인지 몰랐습니다. 일단 넣어두었습니다.
"expert_profile_save": "expert-profile-learned.bin",
Strata는 사용 빈도가 높은 Expert를 우선적으로 VRAM에 올리는 설계로, 실행 시 프로파일링을 통해 교체되는데, 기본값으로는 시작할 때마다 초기화되어 버립니다.
json에 이 설정을 추가하면 10분 간격 및 종료 시에 프로파일을 저장하고 다음 시작 시 불러와 줍니다.
아니 그러니까 기본값으로 해달라는 겁니다.
"allowed_hosts": ["host.docker.internal"],
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기