| 1 | [[PageOutline]] |
| 2 | = GNU Parallel = |
| 3 | GNU parallel is a shell tool for executing many small independent tasks on the multi-core platform (compute nodes). A job can be a single command or a small script that has to be run for each of the lines in the input. GNU parallel can then split the input and pipe it into commands in parallel. |
| 4 | |
| 5 | == Adding GNU Parallel to Environment == |
| 6 | To use GNU parallel on the command line, |
| 7 | |
| 8 | {{{#!bash |
| 9 | module load parallel |
| 10 | }}} |
| 11 | |
| 12 | == GNU Parallel Syntax == |
| 13 | * Reading commands to be run in parallel from an input file |
| 14 | {{{ |
| 15 | parallel [OPTIONS] < CMDFILE |
| 16 | }}} |
| 17 | * Reading command arguments on the command line |
| 18 | {{{ |
| 19 | parallel [OPTIONS] COMMAND [ARGUMENTS] ::: ARGLIST |
| 20 | }}} |
| 21 | * Reading command arguments from an input file |
| 22 | {{{ |
| 23 | parallel [OPTIONS] COMMAND [ARGUMENTS] :::: ARGFILE |
| 24 | }}} |
| 25 | |
| 26 | |
| 27 | [https://www.gnu.org/software/parallel/parallel_tutorial.html] |