Files
video-v1/vav2/docs/working/Driver_API_Implementation_Plan.md

36 lines
1012 B
Markdown
Raw Normal View History

2025-10-07 03:49:32 +09:00
# Driver API 통일 구현 계획
**날짜**: 2025-10-07
**결정**: Hybrid API 실패 → Driver API 통일로 전환
## 구현 경과
### 시도 1: Hybrid API (실패)
- Runtime API `cudaLaunchKernel()` 사용
- 결과: `CUDA_ERROR_INVALID_HANDLE` 여전히 발생
- 원인: Driver API 커널이 Runtime API surface를 인식 못함
## Driver API 통일 구현
### 수정 파일 목록
1. `ExternalMemoryCache.h` - 타입 변경
2. `ExternalMemoryCache.cpp` - Surface API 변경
3. `D3D12SurfaceHandler.h` - 타입 변경
4. `D3D12SurfaceHandler.cpp` - Kernel launch 원복
### 핵심 변경사항
**타입 변경**:
- `cudaSurfaceObject_t``CUsurfObject`
- `cudaResourceDesc``CUDA_RESOURCE_DESC`
**API 변경**:
- `cudaCreateSurfaceObject()``cuSurfObjectCreate()`
- `cudaDestroySurfaceObject()``cuSurfObjectDestroy()`
- `cudaLaunchKernel()``cuLaunchKernel()` (원복)
## 검증 기준
- ✅ Surface 생성 성공
- ✅ Kernel launch 성공
- ✅ 25 프레임 디코딩 성공