본문 바로가기

GPU-KERNEL

AICF Kernel Development & Profiling Sandbox

 CUDA 커널을 독립된 환경에서 개발, 벤치마킹 및 정밀 분석하기 위한 샌드박스

bench.bat, ncu_kernel_extract.bat 을 통해 빌드 - 실행 - 분석 과정이 자동화됨

 

전체 실행 파이프라인

커널 최적화 루프는 다음의 단계를 거친다.

  1. Kernel Code : src / *.cu 커널 수정
  2. scripts \ bench.bat : CMake 빌드 수행 및 GPU Timer 기반 순수 커널 실행 성능 측정
  3. scripts \ ncu_kernel_extract.bat : Nsight Compute 프로파일링 수행
    1. ncu-rep 리포트 생성
    2. Metric 추출 및 CSV Export
    3. ncu_extract.ps1 을 통하 JSON 변환

 

디렉토리 및 파일 구조

aicf-kernels
 ┣ scripts
 ┃ ┣ bench.bat              # 빌드 및 성능 측정 스크립트
 ┃ ┣ ncu_kernel_extract.bat # NCU 프로파일링 및 메트릭 추출
 ┃ ┗ ncu_extract.ps1        # CSV -> JSON 변환기
 ┣ out
 ┃ ┣ ncu                    # Nsight Compute 리포트 (.ncu-rep)
 ┃ ┗ metrics                # 분석 결과물 (.csv, .json)
 ┗ build
   ┗ bin                    # 빌드된 실행 파일 (.exe)

 

bench.bat : 성능 측정

CMake 빌드를 먼저 수행한 후, 지정된 인자로 커널을 실해하여 평균 실행 시간을 출력

 

ncu_kernel_extract.bat ( 정밀 분석 및 매트릭 추출 )

특정 커널을 필터링하여 Nsight Compute 의 상세 메트릭 추출