1 : .pyd 파일의 위치가 Pyton 이 찾는 곳이 아님
파일은 build/lib.win-amd64-cpython-312/ 하위에 존재
하지만 Python 은 import operations_matrix_cuda 시 기본적으로 site-packages 또는 현재 경로만 탐새갛ㅁ
sys.path.insert(0, "<.pyd가 위치한 빌드 경로>")
2 : .pyd import 실패 -> 지정된 모듈을 찾을 수 없습니다.
pyd 는 찾았지만, 내부에서 사용하는 CUDA DLL (cudart64_12.dll) 을 로딩하지 못함
Windows 에서는 .pyd 안
에서 사용하는 외부 DLL 이 없으면 import 에 실패함
os.add_dll_directory("C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/bin")
CUDA DLL 이 있는 디렉토리를 명시적으로 등록해야 내부 DLL 로딩 가능
import_cuda_module() 의 설정을 통해 이를 해결
def import_cuda_module():
import sys, os
# CUDA DLL 경로 등록
os.add_dll_directory("C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/bin")
# .pyd 파일 위치 등록
pyd_path = os.path.abspath("C:/Users/owner/Desktop/AI_framework-dev/dev/backend/backend_ops/operaters/build/lib.win-amd64-cpython-312")
if pyd_path not in sys.path:
sys.path.insert(0, pyd_path)
# 프로젝트 루트 등록 (tests 경로를 인식시키기 위해)
sys.path.insert(0, os.path.abspath("C:/Users/owner/Desktop/AI_framework-dev"))
try:
import operations_matrix_cuda
print("✅ CUDA 연산 모듈 import 성공")
return operations_matrix_cuda
except Exception as e:
print("❌ CUDA 연산 모듈 import 실패:", e)
raise
'dev_AI_framework' 카테고리의 다른 글
node 클래스 정비 (0) | 2025.04.11 |
---|---|
CUDA 기반 loss function 계산 (0) | 2025.04.11 |
디렉토리 구조 리팩토링 (0) | 2025.04.08 |
직접 실행, pytest 실행 둘 다 가능하도록 수정 (0) | 2025.04.07 |
pytest (0) | 2025.04.07 |