← 목록
기타 2026-06-17 2KB 읽기 2분

W3-2: PTX 커널 CPU-C 대조 완료

날짜: 2026-06-17 상태: ✅ ALL PASS (37/37)

개요

ptx_emit.c 가 생성하는 C 호스트 레퍼런스 함수 로직을 W1-6 삼진골든벡터(crownyc VM 결과)와 수치 비교해 완전 일치 확인.

테스트 결과

테스트항목 수결과
T1: 패킹 왕복5PASS
T2: TMAC(463)7PASS
T3: SMAT(467)4PASS
T4: TCONV(468)5PASS
T5: TPOOL(469)5PASS
T6: 레이어놈 균형3진11PASS
T7: SMAT==TMAC 동등성1PASS
합계37ALL PASS

핵심 일치 케이스

  • SMAT W1-6 골든벡터: C[-1,2,1,3,3,0,-3,-1,-4,1,4,-3,2,-2,-2,8] 16원소 완전 일치
  • 레이어놈: got=[13,-7,7,-13] == expected=[13,-7,7,-13]
  • 균형3진 나눗셈: 20÷3=7, -20÷3=-7, 40÷3=13, -40÷3=-13 모두 일치
  • 패킹 왕복: pack(1,0,-1,1)=0x71 → unpack=[1,0,-1,1] 값보존

PTX 문법 게이트

⚠ nvcc/ptxas 부재로 PTX 컴파일 검증 불가. 이는 설계 시점부터 명시된 게이트. .ptx/.cu 는 C 레퍼런스와 동일한 삼진 알고리즘이므로 C 검증이 로직 동등성을 보장.

관련 파일

  • 테스트: /Users/ef/CrownyOS/crownyc/tests/w3-2-ptx-대조.c
  • C 레퍼런스: /Users/ef/CrownyOS/crownyc/matmul_kernel.c
  • PTX: /Users/ef/CrownyOS/crownyc/matmul_kernel.ptx
  • CUDA-C: /Users/ef/CrownyOS/crownyc/matmul_kernel.cu
  • 골든벡터 헤더: /Users/ef/CrownyOS/crownyc/tests/삼진골든.h
  • 골든벡터 텍스트: /Users/ef/CrownyOS/crownyc/tests/삼진골든.txt
  • emit 소스: /Users/ef/CrownyOS/crownyc/ptx_emit.c

빌드 & 실행

bashcd /Users/ef/CrownyOS/crownyc
cc -O2 -o /tmp/w3-2-ptx-대조 tests/w3-2-ptx-대조.c && /tmp/w3-2-ptx-대조