perf: Prevent GPU OOM and Improve Processing Efficiency in estimate_pose module #157
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📝 What does this PR do?
This PR introduces a major refactor of the
estimate_osemodule invideo2motion.pyto address critical memory and performance limitations:data_chunksin smaller, manageable batches.🚫 Motivation and Context
[frame.to(device) for frame in all_frames]), causingCUDA Out Of Memoryerrors with longer videos.These changes transform the resource usage from being a function of the total video length to a function of the processing batch size.
🔧 Changes Made
File Modified:
video2motion.pySpecific Changes:
Generator Expression:
Chunk Processing Logic:
data_chunksinto smaller, fixed-size batches.🧪 How Has This Been Tested?
nvidia-smi. The memory footprint is now stable and significantly lower throughout the entire process, instead of climbing until a crash.✅ Checklist