Modo de instalación en linux
Para comenzar a trabajar con GNU Parallel en Linux,
estos son los pasos.
1.
Descarga la versión más reciente que encuentres en el sitio oficial. Al día de hoy es la 20101202:
$ wget http://ftp.gnu.org/gnu/parallel/parallel-20101202.tar.bz2
|
2. Descomprime e ingresa al directorio
$ tar jxf parallel-20101202.tar.bz2
$ cd parallel-20101202/
|
3. Sigue
los tres pasos habituales: configura, compila e instala. Si tienes compiladores
y bibliotecas GNU no tendrás ningún problema.
$ ./configure
$ make
$ sudo make install
|
4. La documentación
oficial en línea es extensa e idéntica al manual de usuario:
$ man parallel
|
Modo de Utilización
Su modo de utilización, es poner a trabajar cada uno de los procesadores
y/o núcleos con que cuenta el equipo para agilizar el tiempo de realización de
cualquier tarea o proceso.
Ejemplo:
Paralelización de procesos desde consola
Vía Barrapunto
Cuando estamos en consola y queremos aplicar un comando a muchos ficheros,
normalmente hacemos un bucle secuencia. Por ejemplo, para descomprimir
ficheros:
ls *.bz2 | while read i; do bzip2 -d $i && j=`basename $i .bz2`
&& xz -9 $j; done
Si queremos usar las múltiples líneas de ejecución de nuestro sistema
podemos usar GNU parallel. En nuestro ejemplo:
ls *.bz2 | time parallel -j+0 --eta 'bzcat {} | xz -9 > {.}.xz'
De este modo se lanza un bzcat por cada línea de ejecución.
Nótese que lo normal (en este ejemplo concreto) es que el cuello de botella
pase del procesamiento a la entrada/salida (sobre todo si usamos discos
externos USB).
Ventajas:
Permite la ejecución concurrente de
tareas, tanto local como remotamente
o
Parallel GNU está escrita para tener
las mismas opciones que xargs.
o
Si escribes lazos con cáscara, se
encuentra paralelo GNU puede ser capaz de reemplazar la mayoría de los bucles y
hacer que se ejecute más rápido mediante la ejecución de varios trabajos en
paralelo.
o
GNU Parallel puede incluso sustituir
los bucles anidados.
o
GNU paralelo hace que la salida de los
comandos sea el mismo resultado que usted quisiera conseguir para esto se tenía
que ejecutar los comandos de forma secuencial.
o
Es posible utilizar la salida de GNU
paralelo como entrada para otros programas.
No hay comentarios:
Publicar un comentario