본문 바로가기

dev_AI_framework

graph_executor 구축 및 테스트

Python 에서 정의된 연산 그래프, E 행렬을 긱반으로 

CUDA 에서 실행할 수 있도록 CUDA 모듈 구현, 한 번에 실행 가능한 구조로 통합

 

run_graph.cu : CUDA 커널과 함수 정의, 행렬 곱, add, activation function 등의 연산을 E 행렬에 따라 수행, 최적화를 위해 shared memory + row 우선 접근 방식 적용

 

✅ 4. 문제 해결 히스토리

단계문제해결 방법
Pybind11 연결 모듈 import 실패 .pyd 경로 명시적 등록 (sys.path.append)
DLL 오류 cudart64_120.dll not found 경로 확인 → cudart64_12.dll로 교체 후 ctypes.CDLL() 명시 로드
Pybind11 인자 불일치 TypeError: incompatible function arguments bindings.cpp에서 wrapper 함수 생성하여 포인터로 변환
CUDA 오류 커널 실행 또는 매개변수 타입 불일치 .cu/.cuh 간 선언 일치화, shared memory 최적화 적용
출력 0만 나옴 out 버퍼 GPU ↔ CPU 연동 누락 cudaMemcpy() 또는 host out buffer properly managed