Kim Fehl
03/11/2026, 10:24 PMNico Trummer
03/11/2026, 10:40 PMKim Fehl
03/11/2026, 10:42 PMnextflow run nf-core/scdownstream -profile test,docker --outdir results -r dev took almost one hour on 10 CPU / 20 Gb RAM.
Most of the time I saw only 1 CPU utilized... I'm now rerunning it -with-report, so we can see what can be optimized (if possible of course, I remember many bioinf tools which can't be)Nico Trummer
03/11/2026, 10:46 PMresourceLimits directive that is part of the test profile. This limitation is there because it needs to run on the github action runners, which have quite limited resources
You should probably override this so that nextflow uses more of the actually available resourcesNico Trummer
03/11/2026, 10:49 PMNico Trummer
03/11/2026, 10:53 PMKim Fehl
03/11/2026, 11:00 PMKim Fehl
03/11/2026, 11:03 PMNico Trummer
03/11/2026, 11:04 PMresourceLimits is not 'what nextflow is allowed to utilize from your computer' but rather the maximum resources that a single task can request. This needs to be lower than your existing resources, because otherwise it can lead to failures, especially related to the dynamic resource scaling on retry.
So increasing this won't increase parallelization
On the other hand, now that I have been thinking about what you reported a bit more, I remember I have seen the pipeline stuck on singleR for a few minutes every time the tests run, so implementing the multithreading properly will probably be beneficialKim Fehl
03/11/2026, 11:05 PMNico Trummer
03/11/2026, 11:14 PMtest profile. The pipeline comes with tests for each module and each subworkflow. so when you add the PCA as integration method you should be fine by just running the tests of the integration subworkflow and the PCA module, and once it works, open a PR.
The CI will initially fail because the global test snapshot a list of expected output files, and changes like adding a new integration method will trigger a mismatch. Updating the caches requires running the test profile ~5 times, as we are testing many different configuration combinations of the pipeline to ensure all relevant use cases are working properly and reproducibly. I can run this on my HPC cluster which has in total around 200 times the compute capacity of your rented server, and I don't need to pay for it.
So if you guys open a clean PR and tested that the module tests and the subworkflow tests pass, I am already happy. The rest is then relatively easy but takes long. I usually do these things in the background while working on other things