Benchmarks
Cada medición, la máquina detrás y los casos donde Arca pierde.
Actualizado el
Estos números vienen de máquinas concretas y no deben leerse como una ventaja general. Cada uno trae su método, incluidos los casos donde Arca pierde.
Requisitos
Ryzen 9 5900X, Linux. Todo lo de esta sección y la siguiente se reproduce con un script, que descarga el corpus Silesia, lo fija por hash e imprime la máquina y las versiones de las herramientas con las que se ejecutó:
cargo build --releasenix-shell -p hyperfine zip unzip _7zz --run 'bash bench.sh'hyperfine -N --warmup 20 'arca list tiny.zip' 'unzip -l tiny.zip' '7zz l tiny.zip'hyperfine -N --warmup 5 'arca list list-6000.zip' 'unzip -l list-6000.zip' '7zz l list-6000.zip'hyperfine -N --prepare 'rm -f out.zip' \ 'taskset -c 0,1 arca create out.zip corpus -c deflate -j 1' \ 'taskset -c 0,1 arca create out.zip corpus -c deflate -j 2'Compresión
El corpus Silesia, 211.9 MB divididos en 120 archivos iguales, fijado a dos núcleos físicos.
hyperfine -N --prepare 'rm -f out.zip' \ 'taskset -c 0,1 arca create out.zip corpus -c zstd' \ 'taskset -c 0,1 arca create out.zip corpus -c deflate' \ 'taskset -c 0,1 zip -qr -6 out.zip corpus' \ 'taskset -c 0,1 7zz a -tzip -mx5 out.zip corpus'Con Zstandard, Arca fue 13.2× más rápido que zip y 18.1× más rápido que 7-Zip; 7-Zip siguió escribiendo el archivo más pequeño, un 1.6% por debajo de Arca. Con Deflate, Arca fue 5.7× más rápido que zip y su archivo quedó un 1.1% más pequeño.
Deflate contra deflate en Windows 11
16 hilos, mejor de 3.
arca create c1.zip src7z a -tzip -mx5 c2.zip srcCon archivos grandes, Arca comprimió 5.7× más rápido a costa de un 3.7% más de tamaño; con muchos archivos pequeños, 7-Zip fue algo mejor con el mismo tamaño. El ganador depende del corpus.
Extracción en paralelo
Windows 11, 16 hilos, 287 MB en 16 archivos de texto, mejor de 3, borrando la salida antes de cada pasada.
arca create big.zip bigarca extract big.zip -o out -j 1arca extract big.zip -o out7z x -o"out" big7z.zipContra NanaZip, en un archivo lo bastante grande como para doler
Un .zip de 3.13 GB con 1513 archivos que al descomprimirse ocupan 6.28 GB, todo en Deflate, con 13 entradas de más de 100 MB. Windows 11, 16 núcleos, NanaZip 7.0.1832, y un SSD SATA sin DRAM (Kingston A400).
Solo descompresión
Ambas herramientas leen cada entrada, comprueban cada CRC y no escriben nada, en un núcleo cada una.
arca test big.zipNanaZipC t big.zipEl trabajo completo
Escribiendo los 6.28 GB enteros, ejecutado en el orden A B B A para que el declive del disco no favorezca a ningún lado.
arca extract big.zip -o outNanaZipC x -y -o"out" big.zipEl disco sostenía 327 MB/s antes de las cuatro ejecuciones y 90 MB/s después. Arca corrió tanto en el disco más fresco como en el más desgastado, y su peor ejecución aún superó a la mejor de NanaZip.