[sglang] CI 테스트 등록 누락 수정: JIT 커널 테스트/벤치마크 파일 등록
PR 링크: sgl-project/sglang#21547 상태: Merged | 변경: +14 / -0
들어가며
SGLang의 CI 시스템은 register_cuda_ci() 함수를 통해 각 테스트 파일을 특정 CI suite에 등록합니다. 새로운 JIT 커널 테스트와 벤치마크 파일이 추가될 때 이 등록 호출이 누락되면, 해당 테스트가 CI에서 실행되지 않습니다. 이번 PR은 누락된 4개 파일에 등록을 추가합니다.
핵심 코드 분석
등록 패턴
각 파일에 동일한 패턴으로 register_cuda_ci를 추가합니다:
Before (test_cast.py):
import torch
from sglang.jit_kernel.cast import downcast_fp8
After:
import torch
from sglang.jit_kernel.cast import downcast_fp8
from sglang.test.ci.ci_register import register_cuda_ci
register_cuda_ci(est_time=15, suite="stage-b-kernel-unit-1-gpu-large")
register_cuda_ci(est_time=120, suite="nightly-kernel-1-gpu", nightly=True)
등록된 4개 파일:
bench_cast.py- cast 벤치마크 (est_time=10)bench_fused_qknorm_rope.py- fused QK norm+RoPE 벤치마크 (est_time=6)test_cast.py- cast 단위 테스트 (est_time=15 + nightly 120)test_fused_qknorm_rope.py- fused QK norm+RoPE 단위 테스트 (est_time=35 + nightly 256)
왜 이게 좋은가
- CI 커버리지 완성: 테스트가 존재하지만 CI에서 실행되지 않는 "유령 테스트" 문제를 해결합니다.
- Nightly 등록: 시간이 오래 걸리는 테스트는
nightly=True로 분리하여, 일반 CI 속도에 영향을 주지 않으면서도 커버리지를 보장합니다.
정리
14줄 추가의 간단한 PR이지만, CI 시스템의 정합성을 유지하는 중요한 작업입니다. 새 테스트 파일을 작성할 때 register_cuda_ci 호출을 잊지 않는 것이 중요합니다.
참고 자료
⚠️ 알림: 이 분석은 AI가 실제 코드 diff를 기반으로 작성했습니다.
관련 포스트
PR Analysis 의 다른글
- 이전글 [CPython] JIT stencil에서 frame pointer 보존 검증 추가
- 현재글 : [sglang] CI 테스트 등록 누락 수정: JIT 커널 테스트/벤치마크 파일 등록
- 다음글 [triton] GSan AxisInfo 기반 Shadow Update 중복 제거로 2~10배 성능 향상
댓글