[help] Performance bottleneck with crew_controller_local()
and ~32k dynamic branches
#1347
-
Help
DescriptionI'm experiencing some performance bottlenecks when trying to use The main issue is that RAM usage on my server gradually accumulates over time, which eventually slows down the processing to the point where running everything single-threaded (without a controller) is actually faster. Each individual branch runs fairly efficiently, completing in around 0.2 seconds, with minimal CPU or memory usage per branch, so I suspect the overall RAM consumption is related to overhead from managing such a large number of dynamic branches with {crew}. To mitigate the issue, I've enabled I'm aware of the overhead concerns related to creating numerous targets, but in this case, tracking changes for each individual S3 objects and local file is critical, making it difficult to abstract the work into fewer, higher-level targets as recommended here:
Has anyone else experienced similar memory issues with large-scale dynamic branching or found effective strategies to manage memory consumption in this context? Any suggestions or insights would be greatly appreciated! This issue is similar to #1329, but since I’m not using Slurm, I thought it might be worth creating a separate post. Feel free to close this if you believe it’s more appropriate to address in the existing thread. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 8 replies
-
Would you try recording memory/cpu logs as described at https://wlandau.github.io/crew/articles/logging.html#in-targets? I think this could help with #1329 as well. If it's a memory buildup in the |
Beta Was this translation helpful? Give feedback.
Thanks. And if you have a reproducible example you can share, please let me know. I hit a dead end with my own reprexes in #1352.