Temas activosTemas nuevosNavegaciónBuscar |
Bienvenido a la web de la Oficina del Software Libre y Conocimiento Abierto de la Universidad de Cádiz Paralelización de procesos desde consolaVí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).
|
Recursos destacadosProyectos recomendadosEntradas de blog recientes
|