Compresión paralela bzip2

Uso de múltiples núcleos de CPU para compresión Bzip2

BZIP2 comprime los datos dividiéndolos en bloques y procesando cada bloque de forma independiente. Aspose.ZIP ofrece una función que le permite utilizar múltiples núcleos de CPU para manejar estos bloques en paralelo, acelerando significativamente el proceso de compresión de archivos grandes.

De forma predeterminada, la compresión es de un solo subproceso, pero con Aspose.ZIP, puede habilitar el procesamiento paralelo ajustando la propiedad CompressionThreads. Simplemente necesita especificar la cantidad de subprocesos que desea utilizar. Si configura CompressionThreads en un valor mayor que uno, Bzip2 activará el número especificado de núcleos de CPU.

¿Por qué utilizar la compresión multinúcleo?

Usar todos los núcleos de CPU disponibles es particularmente ventajoso cuando se trabaja con grandes conjuntos de datos o cuando el rendimiento es una prioridad. Este enfoque reduce el tiempo necesario para comprimir archivos grandes al distribuir la carga de trabajo entre varios núcleos.

En el siguiente ejemplo, la opción CompressionThreads está configurada para usar todos los núcleos disponibles en la máquina asignando Environment.ProcessorCount a la propiedad CompressionThreads.

1    using (Bzip2Archive archive = new Bzip2Archive())
2    {
3        archive.SetSource("data.bin");
4        archive.Save("result.bz2", new Bzip2SaveOptions() { CompressionThreads =  Environment.ProcessorCount });
5    }

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.