Skip to content

Feat: Add multi-GPU parallel batch export for CLI and GUI#155

Open
ercha wants to merge 11 commits into
ladaapp:mainfrom
ercha:feature/multi-gpu-parallel-export
Open

Feat: Add multi-GPU parallel batch export for CLI and GUI#155
ercha wants to merge 11 commits into
ladaapp:mainfrom
ercha:feature/multi-gpu-parallel-export

Conversation

@ercha

@ercha ercha commented Jun 28, 2026

Copy link
Copy Markdown

Summary

This PR adds multi-GPU parallel batch export support to both the CLI and GUI, allowing users to process multiple video files concurrently across different CUDA devices.

Key changes

  • New lada/export moduleMultiDeviceExportScheduler with process-based parallel workers, plus a reusable process_video_file function decoupled from the CLI entry point
  • New lada/utils/device_utils.py — GPU device detection, validation, and worker-slot allocation
  • CLI — New flags: --devices (auto / comma-separated), --parallel (concurrency cap), --jobs-per-device
  • GUI — Multi-device progress tracking per file with real-time per-worker event handling
  • NVENC bindingbind_nvenc_encoder_options_to_device ensures each NVENC encoder is pinned to the correct GPU

Test plan

  • Single-file export on single GPU (regression check)
  • Batch export with --devices auto on a multi-GPU system
  • Batch export with explicit --devices cuda:0,cuda:1
  • GUI multi-file export with multiple devices
  • Cancel and error handling during multi-device export

🤖 Generated with Claude Code

ercha and others added 11 commits June 28, 2026 15:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant