Commit Graph
7 Commits
Author SHA1 Message Date
iGavroche 281472e0e4 v2.1.1: shared arch detection, sampler auto-detect for z-image/ernie/ideogram4
- Extract detect_architecture() to shared rocm_nodes/utils/architecture.py
- ROCm KSampler now auto-detects GPU architecture + model type at runtime:
  - Flow-matching models (z-image, ernie, ideogram4) logged and optimized
  - Pixel-space models (z-image-turbo) recognized — no VAE decode needed
  - High-memory models (ideogram4, factor 11.6x) get automatic cleanup
  - Architecture-aware backend settings (TF32, fp16 accumulation)
- ROCmSamplerPerformanceMonitor now model-type + architecture aware
- ROCmVAEPerformanceMonitor uses shared architecture detection
- Fix ProgressBar mock in test conftest
- Add flow-matching and pixel-space model detection tests
- Update KSampler/PerfMonitor README docs
2026-06-12 17:49:56 -04:00
iGavroche c989a48aab v2.1.0: LTX/z-image VAE support, temporal tiling, fp16 default, APU tuning
- LTX Video VAE detection (128 channels, 32x spatial compression, 8x temporal)
- z-image / z-image-turbo pixel-space VAE passthrough (no decode needed)
- fp16 default on all AMD GPUs (Strix Halo, RDNA 2/3, CDNA)
- Per-architecture tuning with automatic detection (gfx1151/gfx1100/gfx1030/CDNA)
- Temporal tiling for long videos: overlapping chunks with linear blend,
  zero frame loss, progress bar in UI (disabled by default)
- Chunked IO bypass for LTX — fixes OOM with max_split_size_mb caps
- Fixed memory estimation: correct for all dims (including 5D temporal) and dtypes
- APU-aware memory management (psutil for unified memory on Strix Halo)
- Tile size floor for high-compression VAEs (min 64 latent pixels)
- 25 unit tests covering all new features
2026-06-12 15:54:56 -04:00
iGavroche 82540c5245 chore(release): bump version to 2.0.11 and update documentation
- Updated version to 2.0.11 in pyproject.toml and comfyui_manager.json for consistency.
- Removed video chunking from ROCMOptimizedVAEDecode to ensure full video decoding for temporal/causal VAEs, preventing artifacts.
- Added new ROCm Text Generate LTX2 Prompt node, enhancing generative AI capabilities.
- Updated README to reflect new features and improvements in v2.0.11.
- Enhanced changelog with details on changes and fixes in this release.
2026-03-08 11:35:08 -04:00
iGavroche a098c72d77 feat: Enhance ROCm Checkpoint Loader with caching mechanism
- Added optional in-memory cache to ROCmOptimizedCheckpointLoader to avoid redundant disk loads during repeated API runs.
- Implemented cache eviction strategy to manage memory efficiently on gfx1151 architecture.
- Updated INPUT_TYPES to include parameters for cache usage and forced reload.
- Added integration and unit tests to verify cache behavior and functionality.
- Documented caching mechanism in CHECKPOINT_CACHE_API.md and updated LOADER_NODES_GUIDE.md for clarity.
2026-03-05 14:51:48 -05:00
Nino 5d515f035e docs: add Upgrade to v2 section; fix ROCm branding in title\nchore: add tools/upgrade_to_v2.py migration helper\nrefactor: finalize v2 structure and cleanup wording 2025-10-30 14:47:52 -04:00
Gavroche 471fef9996 ✅ RESTORE TEST SUITE: Comprehensive testing infrastructure
CRITICAL RESTORATION COMPLETED:
- Restored complete test suite that was accidentally deleted
- Fixed performance regression issues
- Created comprehensive testing infrastructure

Test Suite Components:
✅ Unit Tests (10 tests) - All passing
  - Basic VAE decode functionality
  - Different tile sizes and resolutions
  - Precision modes and batch processing
  - Memory optimization and adaptive tiling
  - Error handling and performance consistency

✅ Integration Tests (6 passed, 1 skipped) - All passing
  - Flux workflow simulation
  - High resolution workflow
  - Batch processing workflow
  - Memory-constrained workflow
  - Precision workflow simulation
  - Workflow consistency (video test skipped for now)

✅ Performance Benchmarks (5 tests) - All passing
  - VAE decode performance across resolutions
  - Tile size performance comparison
  - Precision mode performance
  - Memory usage patterns
  - Performance consistency

Test Infrastructure:
- Comprehensive mock objects for ComfyUI modules
- Proper fixture setup for VAE, models, and conditioning
- Performance benchmarking with statistical analysis
- Integration testing for workflow simulation
- Proper error handling and edge case testing

Technical Implementation:
- Fixed comfy module import issues
- Created robust mock VAE with proper tensor handling
- Implemented proper test isolation and cleanup
- Added performance consistency testing
- Comprehensive error handling tests

Status: ✅ FULLY RESTORED
- 21 tests total (20 passing, 1 skipped)
- Complete test coverage for VAE decode functionality
- Performance benchmarking infrastructure
- Integration testing for workflows
- Ready for continuous testing and optimization
2025-10-10 22:49:44 -04:00
Gavroche 3c80308891 FIX: Convert tensor to ComfyUI-compatible format (B, H, W, C)
CRITICAL FIX: Resolved PIL compatibility issue!

Root cause identified:
- Our VAE decode was outputting (B, C, H, W) format
- ComfyUI's save_images expects (B, H, W, C) format
- PIL cannot handle (C, H, W) uint8 data correctly

Solution implemented:
- Convert tensor from (B, C, H, W) to (B, H, W, C) using permute(0, 2, 3, 1)
- Updated validation to check channels in last dimension
- Updated tests to expect new format

Test results:
- (1, 3, 512, 512) format: ❌ PIL Error
- (1, 512, 512, 3) format: ✅ PIL Image created successfully

This should resolve the PIL error:
'Cannot handle this data type: (1, 1, 512), |u1'
2025-10-10 21:47:33 -04:00