Released as 20170522 ('Macron')

This commit is contained in:
Ole Tange 2017-05-21 21:04:37 +02:00
parent e06ab693b3
commit 896f789214
14 changed files with 298 additions and 89 deletions

82
NEWS
View file

@ -1,3 +1,85 @@
20170522
* --timeout can now use s=second,m=minute,h=hour,d=day.
* --dr is now an alias for --dry-run.
* Vote for GNU Parallel's community ads on
http://meta.unix.stackexchange.com/a/4356/2972
http://meta.askubuntu.com/a/16750/22307
http://meta.serverfault.com/a/9040/45704
* GNU Parallel was cited in: Feature Detection in Visual Cortex during
Different Functional States
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5397493/
* GNU Parallel was cited in: From genotype to phenotype: inferring
relationships between microbial traits and genomic components
https://docserv.uni-duesseldorf.de/servlets/DerivateServlet/Derivate-44622/main.pdf
* GNU Parallel was cited in: Designing fecal microbiota transplant
trials that account for differences in donor stool efficacy
http://biorxiv.org/content/biorxiv/early/2016/07/25/065383.full.pdf
* GNU Parallel was cited in: Assessing the predictability of
anharmonic vibrational modes at the example of hydroxyl groups - ad
hoc construction of localised modes and the influence of structural
solutesolvent motifs
http://pubs.rsc.org/-/content/articlelanding/2017/cp/c7cp01662j#!divAbstract
* GNU Parallel was cited in: Mapping Environmental Influences on
Utility Fire Threat
ftp://frapftp.fire.ca.gov/outgoing/transfer/PUC_Map1/Utility%20Fire%20map%201%20final%20review%20and%20development%20report21616.pdf
* GNU Parallel was cited in: Weak vs. Strong Disorder Superfluid-Bose
Glass Transition in One Dimension
https://arxiv.org/pdf/1704.02257.pdf
* GNU Parallel was cited in: Online Automatic Post-editing for MT in a
Multi-Domain Translation Environment
https://www.aclweb.org/anthology/E/E17/E17-1050.pdf
* GNU Parallel was cited in: Cross-calibration of S-NPP VIIRS
moderate-resolution reflective solar bands against MODIS Aqua over
dark water scenes
http://www.atmos-meas-tech.net/10/1425/2017/amt-10-1425-2017.pdf
* GNU Parallel was cited in: Scattering Networks: Efficient 2D
Implementation And Application To Melanoma Classification
http://amslaurea.unibo.it/12261/1/nurrito_eugenio_tesi_fisica_magistrale.pdf
* GNU Parallel was cited in: Genome-scale detection of positive
selection in 9 primates predicts human-virus evolutionary conflicts
http://biorxiv.org/content/biorxiv/early/2017/04/27/131680.full.pdf
* GNU Parallel is used in: Creates a speech dataset for deep learning
https://github.com/jupiter126/Create_Speech_Dataset
* GNU Parallel is used in: Parse and process the demixing secrets
dataset (DSD100) https://github.com/faroit/dsdtools
* First glance at the gnu parallel utility
https://ibiscybernetics.com/blog/2017-04-05.html
* Installing parallel from source
https://bitsanddragons.wordpress.com/2017/05/03/installing-parallel-from-source/
* How to run command or code in parallel in bash shell under Linux or
Unix
https://www.cyberciti.biz/faq/how-to-run-command-or-code-in-parallel-in-bash-shell-under-linux-or-unix/
* Parallel Serial Jobs Using GNU Parallel
http://www.hpc.lsu.edu/training/weekly-materials/2017-Spring/gnuparallel-Feb2017.pdf
* GNU Parallel or How to list millions of S3 objects
https://joeray.me/gnu-parallel-how-to-list-millions-objects.html
* Which Is the Best Tool for Copying a Large Directory Tree Locally?
http://arjon.es/2017/05/11/which-is-the-best-tool-for-copying-a-large-directory-tree-locally/
* Bug fixes and man page updates.
20170422 20170422
* --halt supports done in addition to success and fail. * --halt supports done in addition to success and fail.

12
README
View file

@ -44,9 +44,9 @@ document.
Full installation of GNU Parallel is as simple as: Full installation of GNU Parallel is as simple as:
wget http://ftpmirror.gnu.org/parallel/parallel-20170422.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20170522.tar.bz2
bzip2 -dc parallel-20170422.tar.bz2 | tar xvf - bzip2 -dc parallel-20170522.tar.bz2 | tar xvf -
cd parallel-20170422 cd parallel-20170522
./configure && make && sudo make install ./configure && make && sudo make install
@ -55,9 +55,9 @@ Full installation of GNU Parallel is as simple as:
If you are not root you can add ~/bin to your path and install in If you are not root you can add ~/bin to your path and install in
~/bin and ~/share: ~/bin and ~/share:
wget http://ftpmirror.gnu.org/parallel/parallel-20170422.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20170522.tar.bz2
bzip2 -dc parallel-20170422.tar.bz2 | tar xvf - bzip2 -dc parallel-20170522.tar.bz2 | tar xvf -
cd parallel-20170422 cd parallel-20170522
./configure --prefix=$HOME && make && make install ./configure --prefix=$HOME && make && make install
Or if your system lacks 'make' you can simply copy src/parallel Or if your system lacks 'make' you can simply copy src/parallel

20
configure vendored
View file

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for parallel 20170422. # Generated by GNU Autoconf 2.69 for parallel 20170522.
# #
# Report bugs to <bug-parallel@gnu.org>. # Report bugs to <bug-parallel@gnu.org>.
# #
@ -579,8 +579,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='parallel' PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel' PACKAGE_TARNAME='parallel'
PACKAGE_VERSION='20170422' PACKAGE_VERSION='20170522'
PACKAGE_STRING='parallel 20170422' PACKAGE_STRING='parallel 20170522'
PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_BUGREPORT='bug-parallel@gnu.org'
PACKAGE_URL='' PACKAGE_URL=''
@ -1214,7 +1214,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures parallel 20170422 to adapt to many kinds of systems. \`configure' configures parallel 20170522 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1281,7 +1281,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of parallel 20170422:";; short | recursive ) echo "Configuration of parallel 20170522:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1357,7 +1357,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
parallel configure 20170422 parallel configure 20170522
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
@ -1374,7 +1374,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by parallel $as_me 20170422, which was It was created by parallel $as_me 20170522, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -2237,7 +2237,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='parallel' PACKAGE='parallel'
VERSION='20170422' VERSION='20170522'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -2880,7 +2880,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by parallel $as_me 20170422, which was This file was extended by parallel $as_me 20170522, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -2942,7 +2942,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
parallel config.status 20170422 parallel config.status 20170522
configured by $0, generated by GNU Autoconf 2.69, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View file

@ -1,4 +1,4 @@
AC_INIT([parallel], [20170422], [bug-parallel@gnu.org]) AC_INIT([parallel], [20170522], [bug-parallel@gnu.org])
AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AM_INIT_AUTOMAKE([-Wall -Werror foreign])
AC_CONFIG_HEADERS([config.h]) AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([ AC_CONFIG_FILES([

View file

@ -196,100 +196,106 @@ file:///home/tange/privat/parallel/doc/release_new_version
from:tange@gnu.org from:tange@gnu.org
to:parallel@gnu.org, bug-parallel@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org
Subject: GNU Parallel 20170522 ('Macron') released <<[stable]>> Subject: GNU Parallel 20170522 ('Macron') released [stable]
GNU Parallel 20170522 ('Macron') <<[stable]>> has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/ GNU Parallel 20170522 ('Macron') [stable] has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/
<<No new functionality was introduced so this is a good candidate for a stable release.>> Very little new functionality was introduced so this is a good candidate for a stable release.>>
Haiku of the month: Haiku of the month:
<<>> Always test your script
-- Ole Tange using a --dry-run
or --dr
-- Ole Tange
New in this release: New in this release:
* Vote for GNU Parallel's community ads on * --timeout can now use s=second,m=minute,h=hour,d=day.
http://meta.unix.stackexchange.com/a/4356/2972
http://meta.askubuntu.com/a/16750/22307
http://meta.serverfault.com/a/9040/45704
http://journal.frontiersin.org/article/10.3389/fncom.2017.00021/full#B18 * --dr is now an alias for --dry-run.
https://www.cyberciti.biz/faq/how-to-run-command-or-code-in-parallel-in-bash-shell-under-linux-or-unix/ * Vote for GNU Parallel's community ads on http://meta.unix.stackexchange.com/a/4356/2972 http://meta.askubuntu.com/a/16750/22307 http://meta.serverfault.com/a/9040/45704
https://github.com/jupiter126/Create_Speech_Dataset * GNU Parallel was cited in: Feature Detection in Visual Cortex during Different Functional States https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5397493/
http://pubs.rsc.org/-/content/articlelanding/2017/cp/c7cp01662j#!divAbstract * GNU Parallel was cited in: From genotype to phenotype: inferring relationships between microbial traits and genomic components https://docserv.uni-duesseldorf.de/servlets/DerivateServlet/Derivate-44622/main.pdf
http://www.hpc.lsu.edu/training/weekly-materials/2017-Spring/gnuparallel-Feb2017.pdf * GNU Parallel was cited in: Designing fecal microbiota transplant trials that account for differences in donor stool efficacy http://biorxiv.org/content/biorxiv/early/2016/07/25/065383.full.pdf
https://joeray.me/gnu-parallel-how-to-list-millions-objects.html * GNU Parallel was cited in: Assessing the predictability of anharmonic vibrational modes at the example of hydroxyl groups - ad hoc construction of localised modes and the influence of structural solutesolvent motifs http://pubs.rsc.org/-/content/articlelanding/2017/cp/c7cp01662j#!divAbstract
http://amedee.me/gnu-parallel-is-my-new-toaster/index.html * GNU Parallel was cited in: Mapping Environmental Influences on Utility Fire Threat ftp://frapftp.fire.ca.gov/outgoing/transfer/PUC_Map1/Utility%20Fire%20map%201%20final%20review%20and%20development%20report21616.pdf
http://arjon.es/2017/05/11/which-is-the-best-tool-for-copying-a-large-directory-tree-locally/ * GNU Parallel was cited in: Weak vs. Strong Disorder Superfluid-Bose Glass Transition in One Dimension https://arxiv.org/pdf/1704.02257.pdf
https://github.com/faroit/dsdtools * GNU Parallel was cited in: Online Automatic Post-editing for MT in a Multi-Domain Translation Environment https://www.aclweb.org/anthology/E/E17/E17-1050.pdf
ftp://frapftp.fire.ca.gov/outgoing/transfer/PUC_Map1/Utility%20Fire%20map%201%20final%20review%20and%20development%20report21616.pdf * GNU Parallel was cited in: Cross-calibration of S-NPP VIIRS moderate-resolution reflective solar bands against MODIS Aqua over dark water scenes http://www.atmos-meas-tech.net/10/1425/2017/amt-10-1425-2017.pdf
https://dzone.com/articles/batch-convert-images-from-png-to-jpeg * GNU Parallel was cited in: Scattering Networks: Efficient 2D Implementation And Application To Melanoma Classification http://amslaurea.unibo.it/12261/1/nurrito_eugenio_tesi_fisica_magistrale.pdf
https://arxiv.org/pdf/1704.02257.pdf * GNU Parallel was cited in: Genome-scale detection of positive selection in 9 primates predicts human-virus evolutionary conflicts http://biorxiv.org/content/biorxiv/early/2017/04/27/131680.full.pdf
http://www.sciencedirect.com/science/article/pii/S0044848616312194 * GNU Parallel is used in: Creates a speech dataset for deep learning https://github.com/jupiter126/Create_Speech_Dataset
https://www.aclweb.org/anthology/E/E17/E17-1050.pdf * GNU Parallel is used in: Parse and process the demixing secrets dataset (DSD100) https://github.com/faroit/dsdtools
http://www.atmos-meas-tech.net/10/1425/2017/amt-10-1425-2017.pdf * First glance at the gnu parallel utility https://ibiscybernetics.com/blog/2017-04-05.html
http://amslaurea.unibo.it/12261/1/nurrito_eugenio_tesi_fisica_magistrale.pdf * Installing parallel from source https://bitsanddragons.wordpress.com/2017/05/03/installing-parallel-from-source/
http://biorxiv.org/content/biorxiv/early/2017/04/27/131680.full.pdf * How to run command or code in parallel in bash shell under Linux or Unix https://www.cyberciti.biz/faq/how-to-run-command-or-code-in-parallel-in-bash-shell-under-linux-or-unix/
http://www.nature.com/nprot/journal/v12/n5/full/nprot.2017.022.html?WT.feed_name=subjects_biotechnology * Parallel Serial Jobs Using GNU Parallel http://www.hpc.lsu.edu/training/weekly-materials/2017-Spring/gnuparallel-Feb2017.pdf
https://128.84.21.199/pdf/1704.08997.pdf * GNU Parallel or How to list millions of S3 objects https://joeray.me/gnu-parallel-how-to-list-millions-objects.html
* Which Is the Best Tool for Copying a Large Directory Tree Locally? http://arjon.es/2017/05/11/which-is-the-best-tool-for-copying-a-large-directory-tree-locally/
<<Down https://springerplus.springeropen.com/articles/10.1186/s40064-016-2022-y>>
<<Down http://www.nature.com/nprot/journal/v12/n5/full/nprot.2017.022.html?WT.feed_name=subjects_biotechnology>>
<<Citation not ok: https://arxiv.org/pdf/1704.08997.pdf>> <<Citation not ok: https://arxiv.org/pdf/1704.08997.pdf>>
<<Probably http://www.sciencedirect.com/science/article/pii/S0044848616312194>>
* <<Citation needed: https://sdstrowes.co.uk/publications/sdstrowes-rdns-aaaa.pdf>> <<Citation needed: https://sdstrowes.co.uk/publications/sdstrowes-rdns-aaaa.pdf>>
* <<Citation not ok: https://www.nature.com/articles/s41598-017-01703-6>> <<Citation not ok: https://www.nature.com/articles/s41598-017-01703-6>>
* <<Possibly http://link.springer.com/chapter/10.1007%2F978-3-319-22053-6_46>> <<Possibly http://link.springer.com/chapter/10.1007%2F978-3-319-22053-6_46>>
* <<Possibly http://link.springer.com/article/10.1007/s12021-015-9290-5>> <<Possibly http://link.springer.com/article/10.1007/s12021-015-9290-5>>
* <<Possibly http://link.springer.com/protocol/10.1007/978-1-4939-3578-9_14>> <<Possibly http://link.springer.com/protocol/10.1007/978-1-4939-3578-9_14>>
* << kontakt GNU Parallel was used (unfortunately without citation) in: Instrumentation and Trace Analysis for Ad-hoc Python Workflows in Cloud Environments http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=7214035>> << kontakt GNU Parallel was used (unfortunately without citation) in: Instrumentation and Trace Analysis for Ad-hoc Python Workflows in Cloud Environments http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=7214035>>
* <<Har angiveligt submittet ny version - afventer opdatering>> GNU Parallel was used (unfortunately without citation) in: MUGBAS: a species free gene-based programme suite for post-GWAS analysis http://www.ncbi.nlm.nih.gov/pubmed/25765345 <<Har angiveligt submittet ny version - afventer opdatering>> GNU Parallel was used (unfortunately without citation) in: MUGBAS: a species free gene-based programme suite for post-GWAS analysis http://www.ncbi.nlm.nih.gov/pubmed/25765345
* <<Afventer updateret publisering>> GNU Parallel was used in: Large Scale Author Name Disambiguation in Digital Libraries http://ieeexplore.ieee.org/xpl/abstractReferences.jsp?tp=&arnumber=7004487&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7004487 <<Afventer updateret publisering>> GNU Parallel was used in: Large Scale Author Name Disambiguation in Digital Libraries http://ieeexplore.ieee.org/xpl/abstractReferences.jsp?tp=&arnumber=7004487&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7004487
* <<kontaktet 2015-06-22 Afventer svar fra journal>> GNU Parallel was used (unfortunately with wrong citation) in: TADSim: Discrete Event-Based Performance Prediction for Temperature-Accelerated Dynamics http://vruehle.de/publications/2015c.pdf <<kontaktet 2015-06-22 Afventer svar fra journal>> GNU Parallel was used (unfortunately with wrong citation) in: TADSim: Discrete Event-Based Performance Prediction for Temperature-Accelerated Dynamics http://vruehle.de/publications/2015c.pdf
http://www.researchgate.net/profile/Christoph_Junghans/publication/276178326_TADSim_Discrete_Event-Based_Performance_Prediction_for_Temperature-Accelerated_Dynamics/links/55562b6708ae980ca60c8369.pdf http://www.researchgate.net/profile/Christoph_Junghans/publication/276178326_TADSim_Discrete_Event-Based_Performance_Prediction_for_Temperature-Accelerated_Dynamics/links/55562b6708ae980ca60c8369.pdf
* << Update forventet juni Rachel har lige svaret >> GNU Parallel was used in: SISRS: Site Identification from Short Read Sequences https://github.com/rachelss/SISRS/ << Update forventet juni Rachel har lige svaret >> GNU Parallel was used in: SISRS: Site Identification from Short Read Sequences https://github.com/rachelss/SISRS/
* <<Citation needed: A Cache- and Memory-Aware Mapping Algorithm <<Citation needed: A Cache- and Memory-Aware Mapping Algorithm
for Big Data Applications https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7323015>> for Big Data Applications https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7323015>>
* <<Citation needed: Introspecting for RSA Key Material to Assist Intrusion Detection http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=7331177&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7331177>> <<Citation needed: Introspecting for RSA Key Material to Assist Intrusion Detection http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=7331177&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7331177>>
* <<Citation needed: 3D-GNOME: an integrated web service for structural modeling of the 3D genome http://nar.oxfordjournals.org/content/early/2016/05/16/nar.gkw437.full.pdf+html>> <<Citation needed: 3D-GNOME: an integrated web service for structural modeling of the 3D genome http://nar.oxfordjournals.org/content/early/2016/05/16/nar.gkw437.full.pdf+html>>
* <<link No citation: Next-generation TCP for ns-3 simulator http://www.sciencedirect.com/science/article/pii/S1569190X15300939>> <<link No citation: Next-generation TCP for ns-3 simulator http://www.sciencedirect.com/science/article/pii/S1569190X15300939>>
* <<link No citation: Scalable metagenomics alignment research tool (SMART): a scalable, rapid, and complete search heuristic for the classification of metagenomic sequences from complex sequence populations http://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-016-1159-6#Bib1>> <<link No citation: Scalable metagenomics alignment research tool (SMART): a scalable, rapid, and complete search heuristic for the classification of metagenomic sequences from complex sequence populations http://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-016-1159-6#Bib1>>
* <<No citation: Argumentation Models for Cyber Attribution http://arxiv.org/pdf/1607.02171.pdf>> <<No citation: Argumentation Models for Cyber Attribution http://arxiv.org/pdf/1607.02171.pdf>>
* <<Possible: http://link.springer.com/article/10.1007/s12021-015-9290-5 http://link.springer.com/protocol/10.1007/978-1-4939-3578-9_14>> <<Possible: http://link.springer.com/article/10.1007/s12021-015-9290-5 http://link.springer.com/protocol/10.1007/978-1-4939-3578-9_14>>
* Bug fixes and man page updates. * Bug fixes and man page updates.

View file

@ -1,6 +1,6 @@
<directory name="parallel" rev="202" srcmd5="fda429cef02d9586acbd456694e0fe73" vrev="2"> <directory name="parallel" rev="204" srcmd5="539c3279f505e09b125a83024496e6b2" vrev="2">
<entry md5="86a0368be2f9ed06578c0e7802eda47e" mtime="1492895884" name="parallel-20170422.tar.bz2" size="1543933" /> <entry md5="8b165d9992ba7fe7586ce235a01fcf35" mtime="1495393172" name="parallel-20170522.tar.bz2" size="1564440" />
<entry md5="84c26447ed56c65df3bb936de0549bac" mtime="1492895885" name="parallel.spec" size="4483" /> <entry md5="c889f8f0f1d6e0886e13d65289c8662f" mtime="1495393172" name="parallel.spec" size="4482" />
<entry md5="4b675733211ff4c1d16a1966b025e9c6" mtime="1492895885" name="parallel_20170422.dsc" size="556" /> <entry md5="b52694b459b4b1d1359c1f32db7565e2" mtime="1495393172" name="parallel_20170522.dsc" size="556" />
<entry md5="2955c6e4e7e6ef8bbcfe3cfd018a6d6d" mtime="1492895885" name="parallel_20170422.tar.gz" size="1725824" /> <entry md5="a007bf76a1cc36ef10041da03edcb535" mtime="1495393173" name="parallel_20170522.tar.gz" size="1748503" />
</directory> </directory>

View file

@ -1,7 +1,6 @@
Summary: Shell tool for executing jobs in parallel Summary: Shell tool for executing jobs in parallel
Name: parallel Name: parallel
Version: 20170422 Version: 20170522
Release: 1.2 Release: 1.2
License: GPL License: GPL
Group: Productivity/File utilities Group: Productivity/File utilities

View file

@ -1,7 +1,6 @@
Summary: Shell tool for executing jobs in parallel Summary: Shell tool for executing jobs in parallel
Name: parallel Name: parallel
Version: 20170422 Version: 20170522
Release: 1.2 Release: 1.2
License: GPL License: GPL
Group: Productivity/File utilities Group: Productivity/File utilities

View file

@ -14,7 +14,7 @@ man_MANS = parallel.1 env_parallel.1 sem.1 sql.1 niceload.1 \
parcat.1 parset.1 parcat.1 parset.1
doc_DATA = parallel.html env_parallel.html sem.html sql.html niceload.html \ doc_DATA = parallel.html env_parallel.html sem.html sql.html niceload.html \
parallel_tutorial.html parallel_design.html parallel_alternatives.html \ parallel_tutorial.html parallel_design.html parallel_alternatives.html \
parcat.html \ parcat.html parset.html \
parallel.texi env_parallel.texi sem.texi sql.texi niceload.texi \ parallel.texi env_parallel.texi sem.texi sql.texi niceload.texi \
parallel_tutorial.texi parallel_design.texi parallel_alternatives.texi \ parallel_tutorial.texi parallel_design.texi parallel_alternatives.texi \
parcat.texi parset.texi \ parcat.texi parset.texi \
@ -142,8 +142,8 @@ niceload.html: niceload.pod sql.html
rm -f $(srcdir)/pod2htm* rm -f $(srcdir)/pod2htm*
# Depending on niceload.html to avoid stupid pod2html race condition # Depending on niceload.html to avoid stupid pod2html race condition
parcat.html: parcat niceload.html parcat.html: parcat.pod niceload.html
pod2html --title "GNU parcat" $(srcdir)/parcat > $(srcdir)/parcat.htmln \ pod2html --title "GNU parcat" $(srcdir)/parcat.pod > $(srcdir)/parcat.htmln \
&& mv $(srcdir)/parcat.htmln $(srcdir)/parcat.html \ && mv $(srcdir)/parcat.htmln $(srcdir)/parcat.html \
|| echo "Warning: pod2html not found. Using old parcat.html" || echo "Warning: pod2html not found. Using old parcat.html"
rm -f $(srcdir)/pod2htm* rm -f $(srcdir)/pod2htm*
@ -187,8 +187,8 @@ niceload.texi: niceload.pod
pod2texi --output=$(srcdir)/niceload.texi $(srcdir)/niceload.pod \ pod2texi --output=$(srcdir)/niceload.texi $(srcdir)/niceload.pod \
|| echo "Warning: pod2texi not found. Using old niceload.texi" || echo "Warning: pod2texi not found. Using old niceload.texi"
parcat.texi: parcat parcat.texi: parcat.pod
pod2texi --output=$(srcdir)/parcat.texi $(srcdir)/parcat \ pod2texi --output=$(srcdir)/parcat.texi $(srcdir)/parcat.pod \
|| echo "Warning: pod2texi not found. Using old parcat.texi" || echo "Warning: pod2texi not found. Using old parcat.texi"
parset.texi: parset.pod parset.texi: parset.pod
@ -227,8 +227,8 @@ niceload.pdf: niceload.pod
pod2pdf --output-file $(srcdir)/niceload.pdf $(srcdir)/niceload.pod --title "GNU niceload" \ pod2pdf --output-file $(srcdir)/niceload.pdf $(srcdir)/niceload.pod --title "GNU niceload" \
|| echo "Warning: pod2pdf not found. Using old niceload.pdf" || echo "Warning: pod2pdf not found. Using old niceload.pdf"
parcat.pdf: parcat parcat.pdf: parcat.pod
pod2pdf --output-file $(srcdir)/parcat.pdf $(srcdir)/parcat --title "GNU parcat" \ pod2pdf --output-file $(srcdir)/parcat.pdf $(srcdir)/parcat.pod --title "GNU parcat" \
|| echo "Warning: pod2pdf not found. Using old parcat.pdf" || echo "Warning: pod2pdf not found. Using old parcat.pdf"
parset.pdf: parset.pod parset.pdf: parset.pod

View file

@ -241,7 +241,7 @@ bin_SCRIPTS = parallel sql niceload parcat env_parallel \
@DOCUMENTATION_TRUE@doc_DATA = parallel.html env_parallel.html sem.html sql.html niceload.html \ @DOCUMENTATION_TRUE@doc_DATA = parallel.html env_parallel.html sem.html sql.html niceload.html \
@DOCUMENTATION_TRUE@ parallel_tutorial.html parallel_design.html parallel_alternatives.html \ @DOCUMENTATION_TRUE@ parallel_tutorial.html parallel_design.html parallel_alternatives.html \
@DOCUMENTATION_TRUE@ parcat.html \ @DOCUMENTATION_TRUE@ parcat.html parset.html \
@DOCUMENTATION_TRUE@ parallel.texi env_parallel.texi sem.texi sql.texi niceload.texi \ @DOCUMENTATION_TRUE@ parallel.texi env_parallel.texi sem.texi sql.texi niceload.texi \
@DOCUMENTATION_TRUE@ parallel_tutorial.texi parallel_design.texi parallel_alternatives.texi \ @DOCUMENTATION_TRUE@ parallel_tutorial.texi parallel_design.texi parallel_alternatives.texi \
@DOCUMENTATION_TRUE@ parcat.texi parset.texi \ @DOCUMENTATION_TRUE@ parcat.texi parset.texi \
@ -730,8 +730,8 @@ niceload.html: niceload.pod sql.html
rm -f $(srcdir)/pod2htm* rm -f $(srcdir)/pod2htm*
# Depending on niceload.html to avoid stupid pod2html race condition # Depending on niceload.html to avoid stupid pod2html race condition
parcat.html: parcat niceload.html parcat.html: parcat.pod niceload.html
pod2html --title "GNU parcat" $(srcdir)/parcat > $(srcdir)/parcat.htmln \ pod2html --title "GNU parcat" $(srcdir)/parcat.pod > $(srcdir)/parcat.htmln \
&& mv $(srcdir)/parcat.htmln $(srcdir)/parcat.html \ && mv $(srcdir)/parcat.htmln $(srcdir)/parcat.html \
|| echo "Warning: pod2html not found. Using old parcat.html" || echo "Warning: pod2html not found. Using old parcat.html"
rm -f $(srcdir)/pod2htm* rm -f $(srcdir)/pod2htm*
@ -775,8 +775,8 @@ niceload.texi: niceload.pod
pod2texi --output=$(srcdir)/niceload.texi $(srcdir)/niceload.pod \ pod2texi --output=$(srcdir)/niceload.texi $(srcdir)/niceload.pod \
|| echo "Warning: pod2texi not found. Using old niceload.texi" || echo "Warning: pod2texi not found. Using old niceload.texi"
parcat.texi: parcat parcat.texi: parcat.pod
pod2texi --output=$(srcdir)/parcat.texi $(srcdir)/parcat \ pod2texi --output=$(srcdir)/parcat.texi $(srcdir)/parcat.pod \
|| echo "Warning: pod2texi not found. Using old parcat.texi" || echo "Warning: pod2texi not found. Using old parcat.texi"
parset.texi: parset.pod parset.texi: parset.pod
@ -815,8 +815,8 @@ niceload.pdf: niceload.pod
pod2pdf --output-file $(srcdir)/niceload.pdf $(srcdir)/niceload.pod --title "GNU niceload" \ pod2pdf --output-file $(srcdir)/niceload.pdf $(srcdir)/niceload.pod --title "GNU niceload" \
|| echo "Warning: pod2pdf not found. Using old niceload.pdf" || echo "Warning: pod2pdf not found. Using old niceload.pdf"
parcat.pdf: parcat parcat.pdf: parcat.pod
pod2pdf --output-file $(srcdir)/parcat.pdf $(srcdir)/parcat --title "GNU parcat" \ pod2pdf --output-file $(srcdir)/parcat.pdf $(srcdir)/parcat.pod --title "GNU parcat" \
|| echo "Warning: pod2pdf not found. Using old parcat.pdf" || echo "Warning: pod2pdf not found. Using old parcat.pdf"
parset.pdf: parset.pod parset.pdf: parset.pod

View file

@ -24,7 +24,7 @@
use strict; use strict;
use Getopt::Long; use Getopt::Long;
$Global::progname="niceload"; $Global::progname="niceload";
$Global::version = 20170423; $Global::version = 20170522;
Getopt::Long::Configure("bundling","require_order"); Getopt::Long::Configure("bundling","require_order");
get_options_from_array(\@ARGV) || die_usage(); get_options_from_array(\@ARGV) || die_usage();
if($opt::version) { if($opt::version) {

View file

@ -13,7 +13,6 @@ There are a lot programs with some of the functionality of GNU
B<parallel>. GNU B<parallel> strives to include the best of the B<parallel>. GNU B<parallel> strives to include the best of the
functionality without sacrificing ease of use. functionality without sacrificing ease of use.
=head2 SUMMARY TABLE =head2 SUMMARY TABLE
The following features are in some of the comparable tools: The following features are in some of the comparable tools:
@ -1043,7 +1042,7 @@ The failed commands can be resumed with:
=head2 DIFFERENCES BETWEEN machma AND GNU Parallel =head2 DIFFERENCES BETWEEN machma AND GNU Parallel
Todo. Requires Go > 1.6. Todo. Requires Go >= 1.7.
=head2 DIFFERENCES BETWEEN ClusterSSH AND GNU Parallel =head2 DIFFERENCES BETWEEN ClusterSSH AND GNU Parallel
@ -1066,6 +1065,124 @@ GNU B<parallel> can be used as a poor-man's version of ClusterSSH:
B<parallel --nonall -S server-a,server-b do_stuff foo bar> B<parallel --nonall -S server-a,server-b do_stuff foo bar>
=head1 TESTING OTHER TOOLS
There are certain issues that are very common on parallelizing
tools. Here are a few stress tests. Be warned: If the tool is badly
coded it may overload you machine.
=head2 Output mixes
Output from 2 jobs should not mix.
#!/bin/bash
paralleltool=parallel
cat <<-EOF > mycommand
#!/bin/bash
# If 'a', 'b' and 'c' mix: Very bad
perl -e 'print "a"x3000_000," "'
perl -e 'print "b"x3000_000," "'
perl -e 'print "c"x3000_000," "'
echo
EOF
chmod +x mycommand
# Run 30 jobs in parallel
seq 30 | $paralleltool -j0 ./mycommand | tr -s abc
# 'a b c' should always stay together
# and there should only be a single line per job
=head2 Speed depends on number of words
Some tools become very slow if output lines have many words.
#!/bin/bash
paralleltool=parallel
cat <<-EOF > mycommand
#!/bin/bash
# 10 MB of lines with 1000 words
yes "`seq 1000`" | head -c 10M
EOF
chmod +x mycommand
# Run 30 jobs in parallel
seq 30 | time $paralleltool -j0 ./mycommand > /dev/null
=head2 Output limited by RAM
Some tools cache output in RAM. This makes them extremely slow if the
output is bigger than physical memory and crash if the the output is
bigger than the virtual memory.
#!/bin/bash
paralleltool=parallel
cat <<'EOF' > mycommand
#!/bin/bash
# Generate 1 GB output
yes "`perl -e 'print \"c\"x30_000'`" | head -c 1G
EOF
chmod +x mycommand
# Run 20 jobs in parallel
# Adjust 20 to be > physical RAM and < free space on /tmp
seq 20 | time $paralleltool -j0 ./mycommand | wc -c
=head2 Leaving tmp files at unexpected death
Some tools do not clean up tmp files if they are killed.
#!/bin/bash
paralleltool=parallel
ls /tmp >/tmp/before
seq 10 | $paralleltool sleep &
pid=$!
# Give the tool time to start up
sleep 1
# Kill it without giving it a chance to cleanup
kill -9 $!
# Should be empty: No files should be left behind
diff <(ls /tmp) /tmp/before
=head2 Dealing badly with special file names.
It is not uncommon for users to create files like:
My brother's 12" records cost $$$.txt
Some tools break on this.
#!/bin/bash
paralleltool=parallel
touch "My brother's 12\" records cost \$\$\$.txt"
ls My*txt | $paralleltool echo
=head2 Composed commands do not work
Some tools require you to wrap composed commands into B<bash -c>.
echo bar | $paralleltool echo foo';' echo {}
=head2 Only one replacement string allowed
Some tools can only insert the argument once.
echo bar | $paralleltool echo {} foo {}
=head1 AUTHOR =head1 AUTHOR
When using GNU B<parallel> for a publication please cite: When using GNU B<parallel> for a publication please cite:

View file

@ -576,7 +576,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err); exit ($err);
sub parse_options { sub parse_options {
$Global::version = 20170423; $Global::version = 20170522;
$Global::progname = 'sql'; $Global::progname = 'sql';
# This must be done first as this may exec myself # This must be done first as this may exec myself

View file

@ -7,6 +7,12 @@ test -d "parallel-00000000" || mkdir "parallel-00000000"
(cd src && make top_distdir=../parallel-00000000 distdir=../parallel-00000000/src \ (cd src && make top_distdir=../parallel-00000000 distdir=../parallel-00000000/src \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir) am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[0]: Entering directory '~/privat/parallel/src' make[0]: Entering directory '~/privat/parallel/src'
pod2html --title "GNU parset" ./parset.pod > ./parset.htmln \
&& mv ./parset.htmln ./parset.html \
|| echo "Warning: pod2html not found. Using old parset.html"
/bin/bash: pod2html: command not found
Warning: pod2html not found. Using old parset.html
rm -f ./pod2htm*
make[0]: Leaving directory '~/privat/parallel/src' make[0]: Leaving directory '~/privat/parallel/src'
test -n "" \ test -n "" \
|| find "parallel-00000000" -type d ! -perm -755 \ || find "parallel-00000000" -type d ! -perm -755 \