include/ai/ 에 정의된 코어 헤더 ( tensor, dispatch, op_schema ) 에 의존해 빌드되었음,
통합 빌드 구조는 빌드 종속성 등의 문제 야기
ops 계층을 완전히 코어로부터 분리, ai_shim.hpp 만으로 독립 빌드 가능한 구조로 전환
빌드 대상이, ops 개별 단독 빌드로 변경,
ai_shim 의 역할,
각 ops 모듈이 필요로 하는 최소한의 타입, 유틸을 제공한다.
코어 헤더를 대체하는 얇은 코어
공통 타입 정의, 런타임 유틸리티, 검증 도우미, nvtx 지원, 레지스트리 인터페이스, 에러 전달 매크로,
향후 ai_shim에 추가될 수 있는 기능
| Memory Management | Capture-safe allocator (Arena, BlockPool) | CUDA Graph 내 malloc-free 금지용 |
| Workspace Helpers | WorkspaceFwd, WorkspaceBwd | RNN·Conv 등 복합 op용 버퍼 관리 |
| Profiling Utilities | lightweight timer, kernel range tagging | NVTX 기반 혹은 CUDA event 기반 |
| Host Wrappers | stream-sync safe memcpy host→device wrappers | core 없이 단독 디버그 시 사용 |
| Kernel Traits | dtype-dispatch 매크로, tile config helpers | template meta config 정리 |
| Error Annotation | AI_RAISE_IF(...) 매크로, 예외 메시지 | capture safe 상태에서 trace |
'dev_AI_framework' 카테고리의 다른 글
| GPU 실행 모델의 구분, 정리 ( 단일 스트림 구현 이유를 정리하다가 remind 가 필요했음) - 추론 최적화에선 어떻게 적용할지 (0) | 2025.11.11 |
|---|---|
| ai_shim.hpp 의 수정 이후 오류 발생, 해결 과정 - activation function 에 의한 save_z 조건의 규칙을 좀 더 세분화해야겠다. (0) | 2025.11.10 |
| 현재 상황 정리, 앞으로 뭘 어떻게 해야 할까 (0) | 2025.11.06 |
| graph_executor, 어떤 방식으로 graph_key, pool 의 분리, 재사용 확인 (0) | 2025.11.04 |
| AI Compiler — Role by Graph Type (정적 vs 동적 그래프 형태에 따른 AI 컴파일러의 역할 차이) (0) | 2025.10.29 |