Commit Graph

4 Commits

Author SHA1 Message Date
Ethanfel 83e4b5dd98 perf: add torch.compile to PyTorch fallback kernels
Wraps _pytorch_softsplat and _pytorch_costvol with torch.compile
for ~6x speedup on ROCm/non-cupy setups. Falls back to eager
execution gracefully if compilation fails.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-11 10:13:30 +02:00
Ethanfel 2e75e2d076 fix: handle None from cupy.cuda.get_cuda_path() in cuda_launch
cupy.cuda.get_cuda_path() can return None when CUDA_HOME is not set
and cupy can't auto-detect it. Fall back to /usr/local/cuda.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-11 02:20:20 +02:00
Ethanfel daf0304243 Add pure-PyTorch fallback for GIMM-VFI softsplat forward warp
Make cupy import optional (try/except), replace @cupy.memoize with a
dict cache, add _pytorch_softsplat() using scatter_add for bilinear
splatting, and update forward() dispatch to fall back to PyTorch when
cupy is unavailable or tensor is on CPU.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-11 02:07:08 +02:00
Ethanfel d642255e70 Add GIMM-VFI support (NeurIPS 2024) with single-pass arbitrary-timestep interpolation
Integrates GIMM-VFI alongside existing BIM/EMA/SGM models. Key feature: generates
all intermediate frames in one forward pass (no recursive 2x passes needed for 4x/8x).

- Vendor gimm_vfi_arch/ from kijai/ComfyUI-GIMM-VFI with device fixes
- Two variants: RAFT-based (~80MB) and FlowFormer-based (~123MB)
- Auto-download checkpoints from HuggingFace (Kijai/GIMM-VFI_safetensors)
- Three new nodes: Load GIMM-VFI Model, GIMM-VFI Interpolate, GIMM-VFI Segment Interpolate
- single_pass toggle: True=arbitrary timestep (default), False=recursive like other models
- ds_factor parameter for high-res input downscaling

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 13:11:45 +01:00