## Overview Complete the Kernel Cache LRU system with persistent storage to avoid JIT recompilation across sessions. ## Tasks ### PTX Cache Persistence - [ ] Serialize compiled PTX to disk cache - [ ] Cache location: `~/.pygpukit/kernel_cache/` - [ ] Invalidation on kernel source changes ### Architecture Fingerprinting - [ ] SM version (compute capability) - [ ] Register file size - [ ] Shared memory size per SM - [ ] L2 cache size - [ ] Include in cache key ### LRU Eviction - [ ] Max cache size limit (configurable) - [ ] LRU eviction policy - [ ] Cache stats/metrics API ### Implementation Location - [ ] Update `rust/pygpukit-core/src/kernel_cache.rs` - [ ] Add persistence layer in Rust - [ ] Expose cache control via Python API ## Benefits - Eliminate JIT compilation overhead on subsequent runs - Warm startup for production deployments - Architecture-aware caching prevents invalid kernel reuse ## Related Issues - Closed #42 (v0.2.3 reliability)
Activity
feat(cache): implement persistent kernel cache with LRU eviction (#54)
v0.2.5: FP16/BF16 support, TF32 optimization, reduction ops (#61)
m96-chan commentedon Dec 15, 2025
Completed in v0.2.5
Persistent Kernel Cache with LRU
src/pygpukit/jit/cache.pyFeatures
KernelCacheclass with configurable max entriesget_by_name()/put()for cache operationsstats()returns cache hit/miss statisticsPR: #61