Request for more test resources
Test runners are tailored to restrain their resources usage to specifically what is asked for by
Nextflow through the configuration files. For nf-neuro
tests, you can find this configuration in
tests/config/nextflow.config
. If any of your tests ask for more, you need to define it correctly.
Info
The container detects out-of-bound resource consumption automatically, tests will fail if they haven’t been assigned them sufficiently. It’s a good way to catch them.
First, resource requirements need to be defined in the nextflow.config
file(s) of your test
cases. Add the process.cpu
and process.memory
and set their requirements as needed :
process.memory = '9G'
process.cpus = 6
or
process {
memory = '10G'
cpus = 6
}
To allow test runners on your PR to run with sufficient resources, you’ll need to specify to which
class of runners to assign to. To do so, edit .github/workflows/run_checks_suite.yml
. Find the
matrix
definition for the nf-test
job (currently around line 133
) and add the following
request for a runner in the include
section :
- runner: <name-of-the-runner-class>
path: modules/nf-neuro/<category>/<tool>
Available runner classes that superseed default
:
Runner Class | Resources |
---|---|
(default) |
|
scilus-nf-neuro-bigmem-runners |
|
Important
Specialized runners are limited !!! They are allocated for hungry processes, such as AI/ML models and large dataset studies, don’t abuse them. The more they are requested for, the longer PR take to merge, so don’t ask for them for nothing, meaning be smart in designing your modules ! PRs deemed not needing them will be automatically closed.