Each time I've seen something about GNU parallel pop up I've been tempted to post, but I've never made an account until now. I wrote a very different style of command parallelizer that I named lateral. It doesn't require constructing elaborate commandlines that define all of your work at once. You start a server, and separate invocations of 'lateral run' add your commands to a queue to run on the server, including th…
GNU Parallel Cheat Sheet [pdf]
51–60 of 64 posts
Re: GNU Parallel Cheat Sheet [pdf]
#52Still often the simplest way to get parallel computation in python, sadly.
Re: GNU Parallel Cheat Sheet [pdf]
#53Each time I've seen something about GNU parallel pop up I've been tempted to post, but I've never made an account until now. I wrote a very different style of command parallelizer that I named lateral. It doesn't require constructing elaborate commandlines that define all of your work at once. You start a server, and separate invocations of 'lateral run' add your commands to a queue to run on the server, including th…
Can you make a comparison between lateral and sem?
Re: GNU Parallel Cheat Sheet [pdf]
#54Re: GNU Parallel Cheat Sheet [pdf]
#55Earlier quoted context omitted.
It would be trivial to fork parallel. If people cared enough, a fork would appear and be adopted. That's the beauty of free software. If you don't like it you can change it.
It was already forked in its early perl days, and thus it's very hard to use it properly as build tool, as the non-GNU version has an entirely different argument syntax. eg on macOS or BSD. You really have to probe for the GNU version (the more popular and newer one, with this awkward citation and begging), but for longer tasks it speeds up processing immensely. There's no need for Hadoop when you can use parallel. I…
Googling for "bsd parallel command" doesn't seem to show anything relevant.
Re: GNU Parallel Cheat Sheet [pdf]
#56Ah, the rare case of nagware in GNU. From the man page: "--citation Print the BibTeX entry for GNU parallel and silence citation notice. If it is impossible for you to run --bibtex you can use --will-cite. If you use --will-cite in scripts to be run by others you are making it harder for others to see the citation notice. The development of GNU parallel is indirectly financed through citations, so if your users do no…
Beyond being supremely irritating, nagware is simply not scalable. Imagine if every utility, library, or driver in a typical Linux distribution took this approach. :( I encourage Debian et al. to adopt a "no nagware" policy.
> Programs whose authors encourage the user to make donations are fine for the main distribution, provided that the authors do not claim that not donating is immoral, unethical, illegal or something similar; in such a case they must go in non-free.
BTW, the nagware code has been removed in Debian unstable:
Re: GNU Parallel Cheat Sheet [pdf]
#57Earlier quoted context omitted.
It was already forked in its early perl days, and thus it's very hard to use it properly as build tool, as the non-GNU version has an entirely different argument syntax. eg on macOS or BSD. You really have to probe for the GNU version (the more popular and newer one, with this awkward citation and begging), but for longer tasks it speeds up processing immensely. There's no need for Hadoop when you can use parallel. I…
Where can I read about this fork? Googling for "bsd parallel command" doesn't seem to show anything relevant.
My configure.ac recipe for the proper parallel is this, setting logs_all to the GNU parallel version.
dnl GNU parallel, skip the old non-perl version from moreutils so far
AC_CHECK_PROGS([PARALLEL], [parallel])
logs_all=logs-all-serial.sh.in
if test -n "$PARALLEL"; then
AC_MSG_CHECKING([PARALLEL version])
parallel_version=`$PARALLEL --version 2>&1 | head -n1 | cut -c14-`
case "$parallel_version" in
[0-9]*) AC_MSG_RESULT([$parallel_version])
logs_all=logs-all-parallel.sh.in
;;
*invalid*)
PARALLEL=
parallel_version="skip old moreutils version, need GNU parallel"
esac
AC_MSG_RESULT([$parallel_version])
fi
AM_CONDITIONAL([HAVE_PARALLEL], [test -n "$PARALLEL"])Re: GNU Parallel Cheat Sheet [pdf]
#58Earlier quoted context omitted.
Where can I read about this fork? Googling for "bsd parallel command" doesn't seem to show anything relevant.
Mixed it up. It was from moreutils, not bsd. My configure.ac recipe for the proper parallel is this, setting logs_all to the GNU parallel version. dnl GNU parallel, skip the old non-perl version from moreutils so far AC_CHECK_PROGS([PARALLEL], [parallel]) logs_all=logs-all-serial.sh.in if test -n "$PARALLEL"; then AC_MSG_CHECKING([PARALLEL version]) parallel_version=`$PARALLEL --version 2>&1 | head -n1 | cut -c14-` c…
Re: GNU Parallel Cheat Sheet [pdf]
#59Ah, the rare case of nagware in GNU. From the man page: "--citation Print the BibTeX entry for GNU parallel and silence citation notice. If it is impossible for you to run --bibtex you can use --will-cite. If you use --will-cite in scripts to be run by others you are making it harder for others to see the citation notice. The development of GNU parallel is indirectly financed through citations, so if your users do no…
Gooood who caaaaares. They spent a lot of time and effort, and made a cool thing and gave it away for free. If it bothers you so much, just add the flag. Or patch it out.
Re: GNU Parallel Cheat Sheet [pdf]
#60I also use it as a rudimentary queue system for stacking up the next jobs (while scripts stack up the next jobs, but..).
It had a bit of a learning curve because the docs are really technical and not geared towards new users enough, but reading and re-reading and trying some examples helped cement.
Here are a few ways I use it:
echo "Number of RAR archives: "$(ls .rar | wc -l)
ls .rar | parallel -j0 1_1_rarFilesExtraction
ls -d stocks_all/Intraday/*.txt | parallel -j${ccj}% 1_2_stockFileProcessing {}
I'd like to scale this to work with multiple machines (as Parallel can do) but I get really tempted to just write my own parallel processor just to rely on my own code.