[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Unexpected behavior of -m/-X relating to -j/derived cores
From: |
Josef wells |
Subject: |
Unexpected behavior of -m/-X relating to -j/derived cores |
Date: |
Wed, 20 May 2020 09:57:59 -0500 |
I recently had a bug where I used -X when I didn't mean to,
(copy/paste bug). The script can't handle additional arguments
without additional --flags. I can approximate this easily with this
example (using -m because -X is generally too smart for utils I could
think of):
This will fail, since 'dd' doesn't allow bare arguments and the -j1
forces parallel to try to run it all at once.
parallel --tag -j1 -m 'dd if=/dev/zero of=/dev/null count={}' ::: 1 2
This doesn't fail.
parallel --tag -j2 -m 'dd if=/dev/zero of=/dev/null count={}' ::: 1 2
This manifest in jobs running on machines with lots of cores, no
failure, despite the -m/-X really being in error. Without the -j, we
just get the default -j for that machine.
I would have liked for the -m/-X to fail regardless of the number of
cores, since it was really inappropriate to run the tool with options
in that way. To me the -m/-X is more important than the -j but I can
see it both ways.
$ parallel --version
GNU parallel 20200422
Also, Thanks for parallel, it is fantastic and I love it.
Josef
- Unexpected behavior of -m/-X relating to -j/derived cores,
Josef wells <=