Skip to content

Conversation

@PaulJonasJost
Copy link
Collaborator

Changed to ProcessPoolExecutor according to "concurrent.futures" documentation.

I have the indexing in since we are not using imap anymore. Do we need a tests that sees we are returning them in the right oder? Probably not necessary to me, as we are anyways sorting them shortly after.

Closes #1499?

@codecov-commenter
Copy link

codecov-commenter commented Dec 16, 2025

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.28%. Comparing base (bc7d89a) to head (b93064e).
❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #1664      +/-   ##
===========================================
- Coverage    84.37%   84.28%   -0.09%     
===========================================
  Files          164      164              
  Lines        14320    14324       +4     
===========================================
- Hits         12082    12073       -9     
- Misses        2238     2251      +13     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Member

@dweindl dweindl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have the indexing in since we are not using imap anymore. Do we need a tests that sees we are returning them in the right oder? Probably not necessary to me, as we are anyways sorting them shortly after.

The MultiProcessEngine is not restricted to multi-start optimization, so it shouldn't rely on that and we should ensure that result ordering corresponds to task ordering. So yes, having a test would be good. Doesn't have to be any kind of optimization, can be some trivial task.

) -> list[Any]:
"""Pickle tasks and distribute work over parallel processes.
Tasks are pickled on-demand as workers become available.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that's true. ProcessPoolExecutor.submit is non-blocking.
If it were true, the progress bar handling wouldn't work, because it would only start after the tasks have been submitted.

Closes #1499?

No. For closing that, after submitting the initial n_procs tasks, a new tasks should only be submitted after a previous one finished.

Nothing against merging this nonetheless, but please keep the other issue open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants