Force xopen to use the main thread when cores==1 #572
Merged
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.
Currently cutadapt opens external programs on the default setting, thus using more than 1 core by default. Even if cores is explicitly set to 1.
Cores ==0 does not help the situation.
EDIT: As shown in many many benchmarks. There is overhead to using multithreading. The best way to utilize a cluster is to open a multitude of single threaded processes. Cutadapt is fast enough to do this in reasonable time.
EDIT2: A hidden flag that explicitly sets the xopen threads could be an alternative.