Benchmarks

Cinco clientes, hardware y proveedores idénticos, ejecuciones intercaladas para que la deriva del proveedor se cancele. La métrica es el tiempo hasta un archivo usable - descargado, verificado, extraído - medido junto al disco, el espacio libre y la memoria que el trabajo te cuesta. Cada tabla nombra las versiones contra las que corrió y el día en que corrió. Incluye los tramos que no ganamos.

En esta página

La versión corta · medido el 23 de agosto de 2026 en la línea de código que se publicó como nzbfast 1.2.2

Ningún cliente medido es más barato en procesador, memoria y disco a la vez

Las rondas más recientes de esta página corrieron el 23 y el 24 de agosto de 2026 - la más reciente de ellas sobre la propia versión publicada v1.2.2 - frente a las versiones actuales de otros cuatro clientes, en el mismo hardware, las mismas líneas y los mismos proveedores: dos formas de trabajo de 6,5 a 87 GB, y velocidades de línea de 250 Mbit a 10 GbE. En esas rondas, ningún cliente resultó más barato que nzbfast en procesador, memoria y disco a la vez: cada uno cuesta más en al menos dos de los tres, lo máximo que cualquiera de ellos ahorró en un solo eje fue de aproximadamente un 2 por ciento - un empate estadístico, dentro de la propia dispersión de ese cliente entre ejecuciones - y en disco todos ellos movieron al menos el doble de bytes para un resultado idéntico byte a byte. De fábrica, nzbfast también fue el que menos memoria ocupó de todos los clientes medidos, en todos los escenarios, por un margen de 2,0x a 4,5x sobre el rival más cercano.

¿Cuál eres tú?

Un NAS, un mini PC o un pequeño servidor doméstico. nzbfast ocupó 143 MB de memoria en un trabajo donde el rival más cercano ocupó 531 MB y el más pesado 1,6 GB, termina con unos 50 MB de espacio libre de sobra donde otros clientes necesitan aproximadamente el doble de la descarga libre, y la escalera de baja memoria puso un trabajo de 87 GB en el disco con 286 MB de RAM en la configuración de fábrica. Y como mueve cada byte por tu disco aproximadamente una vez, una unidad NAS puede seguir el ritmo de una velocidad de línea que la desbordaría bajo un cliente de dos pasadas. Consulta las tablas de coste, el espacio libre y el límite de velocidad del disco.
Fibra de gigabit. El trabajo termina cuando se llena la barra de descarga, no minutos después: la verificación y la extracción viajan junto con la descarga, tu conexión nunca queda inactiva a lo largo de toda una cola, y tu disco ve aproximadamente la mitad de los bytes. Consulta las tablas de coste y la ronda de publicaciones dañadas.
Una línea multi-gigabit o de 10 GbE. El motor sostiene unos 8,7 Gbps desde un solo proceso, con la verificación y la extracción viajando junto con la descarga, y la aritmética del disco es lo primero que muerde: un cliente que mueve cada byte por el disco dos o tres veces necesita un disco dos o tres veces más rápido que tu línea antes de que la línea sea el límite. Consulta la ronda de 87 GB y el límite de velocidad del disco.
Una línea más lenta o compartida (250-500 Mbit). Medido el 24 de agosto de 2026 a ambas velocidades: nzbfast terminó primero y ningún otro cliente lo superó en ningún recurso que medimos - a 500 Mbit corrió a aproximadamente el 96% del cable durante la verificación y la extracción, un 14,7% por delante del rival más cercano. Una línea modesta es donde más se nota el desperdicio, y donde más ayuda el cliente más ligero. Consulta los escalones de línea más lenta.

La mayoría de los descargadores escriben tu descarga en el disco al menos dos veces: una mientras la descargan, y otra mientras la descomprimen. nzbfast hace todo el trabajo en una sola pasada, así que escribe aproximadamente la mitad de los bytes por trabajo, ocupa menos memoria mientras trabaja, y gasta menos segundos de procesador por GB. Eso es menos carga en la máquina mientras la usas y la mitad de las escrituras por trabajo en tus discos, para los mismos archivos idénticos byte a byte - y como cada byte cruza el disco aproximadamente una vez, tu disco solo tiene que seguir el ritmo de tu línea una vez.

nzbfast no gana todas las tablas de esta página, y las que pierde están bajo los tramos que no ganamos - incluido uno de esta misma ronda. Lo que se mantuvo en todas las rondas que medimos es la factura combinada.

Primero la metodología

El montaje

La ronda del 23 de agosto de 2026

Lo que cuesta un trabajo: cada cliente en su versión actual, una noche, una máquina

Seis brazos en una máquina Apple Silicon de 20 núcleos con una línea de 1 Gbit: nzbfast con la configuración de fábrica, el mismo binario con su gobernador de conexiones desactivado, y las versiones actuales de los otros cuatro clientes. Cinco proveedores, TLS en todas partes, tres repeticiones por cliente y por escenario con el orden rotado dentro de cada ronda, y la salida de cada tramo comprobada byte a byte: 36 de 36 tramos produjeron la carga útil exacta. A 1 Gbit la línea marca el ritmo y los tiempos de finalización convergen por diseño, así que la columna de tiempo está ahí para mostrar esa convergencia; las columnas de recursos son lo que la ronda existe para medir.

Hay un ajuste que importa y se declara en vez de esconderse: la configuración de fábrica ahora incluye un gobernador de conexiones consciente de la línea, y en esta línea mantuvo 25 conexiones mientras que todos los demás clientes corrieron sus cientos configurados. La fila «gobernador desactivado» marca los mismos 360 sockets que usaban nuestras rondas anteriores, así que las dos comparaciones siguen disponibles: el producto tal como lo recibe un lector, y el experimento histórico.

Lanzamiento con nombre de 6,5 GB, extracción en el caminotiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)cable (GB)
nzbfast, de fábrica (25 conexiones)58 s143 MB35,7 s6,26,5
nzbfast, gobernador desactivado (360)60 s583 MB38,0 s6,16,6
NZBGet 26.3-testing61 s801 MB40,1 s12,56,5
SABnzbd 5.1.163 s1.588 MB69,5 s13,86,5
rustnzb 1.4.567 s628 MB61,9 s13,47,2
Weaver 0.7.8110 s531 MB34,9 s¹12,56,5
Lanzamiento ofuscado de 34 GBtiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)cable (GB)
nzbfast, de fábrica (25 conexiones)302 s191 MB194,0 s32,534,4
nzbfast, gobernador desactivado (360)302 s465 MB205,4 s32,934,4
NZBGet 26.3-testing306 s900 MB221,3 s68,134,4
SABnzbd 5.1.1308 s1.607 MB356,5 s72,534,4
rustnzb 1.4.5343 s445 MB332,6 s69,837,8
Weaver 0.7.8511 s1.076 MB373,8 s98,034,4

Medido el 23 de agosto de 2026 contra SABnzbd 5.1.1, NZBGet 26.3-testing, rustnzb 1.4.5 y Weaver 0.7.8, medianas de tres con cada tramo verificado byte a byte, cinco proveedores, todo con TLS. Los brazos de nzbfast corrieron con una compilación de la misma línea de código de ese mismo día, unas siete horas antes de la compilación de publicación v1.2.2, así que sus filas no llevan número de versión; las tablas de 500 Mbit y 87 GB de esta página sí corrieron la compilación de publicación y lo dicen. ¹ La mediana de CPU de Weaver en el escenario de 6,5 GB es un 2% menor que la nuestra (34,9 frente a 35,7), con sus propios tres tramos entre 34,1 y 56,1 s, así que léelo como un empate estadístico; es la única celda de cualquiera de las dos tablas que se lleva un rival, y se repite bajo los tramos que no ganamos. En el escenario de 34 GB nuestro CPU es el más bajo sin discusión. La versión más nueva de Weaver, la 0.8.3, no publica binario; nuestra compilación desde el código fuente midió un patrón de procesador que no podemos atribuir con limpieza a la versión en vez de a la compilación, así que esta tabla enfrenta el activo de publicación 0.7.8, probado por hash, y lo declara así en vez de publicar una cifra confundida. rustnzb 1.4.5 completó aquí todos los tramos, escenario ofuscado incluido.

La columna de cable, con precisión. 6,5 GB en el escenario limpio - la misma cifra que NZBGet y SABnzbd declaran para sí mismos. El peor caso que conocemos es una publicación ofuscada renumerada deliberadamente, donde esquivar la numeración revuelta cuesta un artículo extra por cada esquive: medido en 1,10-1,20x el plan mínimo en las dos formas de este tipo que pudimos construir. Las celdas de 7,2 y 37,8 GB de rustnzb son exceso propio suyo, con una advertencia en su registro en dos tramos.

Qué significa la columna de memoria con la configuración de fábrica: el gobernador es la mayor razón por la que la fila de fábrica se queda en 143-191 MB - menos conexiones es menos en vuelo a la vez - y desactivarlo (la segunda fila) es el puente honesto hacia todas las tablas más antiguas de 360 sockets de esta página. Incluso a 360 sockets estamos a la par del rival más ligero (583 MB frente a los 628 de rustnzb en el escenario pequeño, 465 frente a sus 445 en el grande); con la configuración de fábrica ya no queda ningún empate.

Líneas más lentas · medido el 24 de agosto de 2026 en nzbfast 1.2.2

Cuanto más lenta la línea, menos separa la velocidad a los clientes - y más lo hace la factura

Con una línea suficientemente lenta, el tiempo de finalización de cada cliente es el cable y nada más, así que una línea lenta esconde muchos pecados. Lo que no puede esconder es lo que cada cliente quema para llenarla. Configuramos el banco de 1 Gbit a dos velocidades que corresponden a planes reales y enfrentamos los seis brazos en cada una - la misma máquina, los mismos cinco proveedores, tres repeticiones por cliente con el orden rotado, cada tramo verificado byte a byte, 36 de 36 correctos en las dos rondas. El brazo de nzbfast a 500 Mbit es la propia versión publicada v1.2.2.

Línea de 500 Mbit, lanzamiento de 6,5 GBtiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)
nzbfast 1.2.2, de fábrica109 s142 MB45,4 s6,2
nzbfast 1.2.2, gobernador desactivado115 s592 MB59,0 s6,2
SABnzbd 5.1.1125 s1.665 MB99,2 s14,2
rustnzb 1.4.5131 s626 MB92,6 s14,5
Weaver 0.7.8138 s564 MB48,5 s12,4
NZBGet 26.3-testing145 s¹846 MB64,3 s13,2
Línea de 250 Mbit, el mismo lanzamientotiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)
nzbfast, de fábrica217 s144 MB53,3 s6,2
nzbfast, gobernador desactivado219 s651 MB67,9 s6,2
NZBGet 26.3-testing227 s826 MB78,4 s13,3
SABnzbd 5.1.1230 s1.667 MB162,4 s15,2
Weaver 0.7.8230 s789 MB62,0 s12,9
rustnzb 1.4.5256 s644 MB122,4 s15,4

Lee las dos tablas como un gradiente. A 250 Mbit todo el campo cae dentro de un 18% en el reloj y le llevamos al rival más cercano una ventaja del 4,4%; a 500 Mbit la brecha se abre al 14,7%; a las velocidades de gigabit y 10 GbE de las tablas de arriba y abajo se abre todavía más. Las diferencias de velocidad crecen con la línea. Las columnas de recursos no esperan a una línea rápida: a cada velocidad medida, cada rival ocupó al menos 3,9x la memoria, gastó más procesador, y movió aproximadamente el doble de bytes de disco para el mismo archivo idéntico byte a byte.

El gobernador de conexiones se gana el sustento en líneas lentas, y el propio contador de descartes del conformador dice por qué. La configuración de fábrica mantuvo 25 conexiones donde cada rival corrió cientos; el mismo binario con el gobernador desactivado corrió con 360. Menos flujos por una cola fija significa menos pérdida y menos reenvío: el conformador registró unos 4.200 descartes por tramo con tope frente a unos 155.000 sin tope a 500 Mbit, y el brazo con tope fue más rápido, 4,2x más ligero en memoria y 1,3x más ligero en CPU que nuestra propia postura de 360 sockets. Más conexiones no es más velocidad; por debajo de un gigabit es mediblemente lo contrario.

Medido el 24 de agosto de 2026, medianas de tres, en una máquina Apple Silicon de 20 núcleos con su línea conformada a cada velocidad (la velocidad conformada verificada por una sonda independiente antes de cada ronda: 248 y 496 Mbit). El brazo de nzbfast a 500 Mbit es la versión de la etiqueta de publicación v1.2.2; la ronda de 250 Mbit corrió horas antes sobre la misma línea de código. Los recuentos de bytes en una línea conformada se leen del propio contador de cada cliente, nunca de la interfaz de red (el conformador descarta y TCP reenvía, así que la interfaz cuenta las dos copias). Los tiempos totales son comparables dentro de cada tabla, no entre rondas conformadas de forma distinta. ¹ Los tres tramos de NZBGet a 500 Mbit fueron de 114 a 158 s con lecturas de recursos planas - una dispersión genuina, así que se cita la mediana y se declara la dispersión en vez de acotarla.

El archivo grande · medido el 24 de agosto de 2026 en nzbfast 1.2.2

Una publicación de 87 GB hasta un archivo usable de 77 GB, a 10 GbE

El otro extremo de la historia de la velocidad de línea: una máquina de 10 GbE, cinco proveedores, una publicación de 87 GB cuya carga útil es un único vídeo de 76,6 GB, seis brazos, tres repeticiones rotadas, y la salida de cada tramo verificada byte a byte - 18 de 18 tramos produjeron el archivo idéntico, los seis clientes de acuerdo en su suma de comprobación. Los brazos de nzbfast son la versión publicada v1.2.2.

Publicación de 87 GB, 10 GbEtiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)cable (GB)
nzbfast 1.2.2 (50 conexiones)¹70 s415 MB144 s72,977,2
nzbfast 1.2.2, gobernador de conexiones activado (25)90 s336 MB130,5 s72,977,4
NZBGet 26.3-testing93 s1.195 MB443 s183,777,2
SABnzbd 5.1.1113 s1.910 MB234 s235,177,2
Weaver 0.7.8645 s1.825 MB631 s435,1²77,3
rustnzb 1.4.5869 s³681 MB2.444 s216,186,9

La historia del disco a su mayor escala hasta ahora. Nuestro disco pico durante el trabajo es de 70,8 GiB - POR DEBAJO de la salida de 76,6 GB, porque la cola de la carga útil todavía está llegando mientras la cabeza ya es final - y la E/S de disco total es 1,00x la carga útil. Los rivales mueven de 2,5x a 6,0x los bytes para el mismo archivo. Y el brazo más rápido sostiene unos 8,7 Gbps incluyendo la verificación y la extracción en flujo; en el momento en que se llena la barra de descarga, el archivo está terminado.

¹ Cada cliente de esta página se enfrenta con su mejor configuración documentada, y en una línea de 10 GbE la nuestra es 50 conexiones en total - 10 por servidor, un ajuste que cualquier nivel de cuenta alcanza - el mismo ajuste único que le damos a cada rival (a SABnzbd su pipelining, a NZBGet su caché de artículos). Cincuenta no es una desventaja: un barrido de seis escalones sobre este mismo escenario encontró el mismo techo desde 50 conexiones hasta el máximo de cuenta de 360, mientras el coste de procesador sube 2,3x en ese rango sin ganar nada, así que los máximos no compran nada que esta tabla fuera a mostrar. La fila de 50 conexiones se volvió a medir después con la calidad completa de tres repeticiones el mismo día, en la misma máquina, contra la misma suma de comprobación de salida: 70 / 70 / 70 s, las tres verificadas byte a byte. La fila del gobernador está aquí porque es la más interesante: a cada velocidad hasta un gigabit sus 25 conexiones son gratis-o-más-rápidas, e incluso aquí, donde cuestan aproximadamente una quinta parte del tiempo total, compran 336 frente a 415 MB de memoria y 130 frente a 144 segundos de CPU. Escalar el gobernador con la velocidad de línea automáticamente - de modo que el mejor comportamiento sea también el predeterminado, en el codo en vez de en el máximo - está en cola para la próxima versión. ² Los 435 GiB de E/S de disco de Weaver para una descarga de 77 GB son su almacén cifrado en reposo releyendo y reescribiendo casi todo a medida que el trabajo crece - el patrón superlineal que midieron nuestras rondas instrumentadas de julio, todavía presente en la versión actual. ³ rustnzb 1.4.5 completa correcto byte a byte y su coste está en tiempo de procesador y cable: unos 2.444 segundos de CPU frente a un reloj de 869 s en las tres repeticiones, y 86,9 GB descargados donde el plan óptimo es 77,2 (obtiene el juego de recuperación completo incondicionalmente). Medido el 24 de agosto de 2026, medianas de tres, todas las versiones actuales; la repetición 3 de los tres brazos más rápidos corrió ~40 minutos después del resto (un guardián de espacio libre pausó la ronda; el desplazamiento no movió ninguna mediana más de lo que ya lo hace la dispersión entre repeticiones).

Desde esta ronda, la fila del regulador queda superada por lo que trae la 1.2.3. Medida el 26 de agosto de 2026 en el mismo escenario, la misma máquina y la misma línea de 10 GbE, seis tramos correctos byte a byte contra la suma de comprobación de esta tabla: 71 s con los ajustes de fábrica, 322 MB y 139,3 segundos de procesador, frente a los 90 s de arriba. Fue una ronda solo de nzbfast sobre una compilación posterior, así que se enuncia aquí en vez de correrse en la tabla: cada fila de arriba se mantiene como se midió el 24 de agosto.

Los mismos 87 GB en Windows nativo, contra el buque insignia comercial

El primer cliente comercial de esta página: Newsbin Pro, el cliente de pago para Windows más longevo, enfrentado contra nuestra versión oficial para Windows en una máquina Windows nativa de 10 GbE cuyo disco de sistema TLC sostiene 0,99 GB/s de escritura - el disco más lento de nuestra flota de pruebas, lo que la convierte en el lugar honesto para enfrentar a un cliente de dos pasadas. La misma publicación de 87 GB, tres repeticiones intercaladas, la salida de cada tramo verificada byte a byte contra la misma suma de comprobación que la tabla de arriba: 6 de 6 idénticos.

Publicación de 87 GB, Windows, disco TLCtiempo hasta archivo usablememoria máxima (RSS)tiempo de CPUE/S de disco (GiB)cable (GB)
nzbfast 1.2.2 (50 conexiones)105 s469 MB154 s84,576,7
Newsbin Pro 6.90 (360 conexiones)477 s881 MB1.862 s154,176,7

Medido el 24 de agosto de 2026, medianas de tres, ambos clientes en su versión actual. Newsbin corrió con su propio máximo de conexiones por servidor configurado - 360 sockets contra nuestras 50 - y sus tiempos excluyen los 90 segundos de asentamiento que nuestro arnés espera antes de declarar terminado a un cliente vigilado, así que la comparación se inclina a su favor dos veces y el resultado se mantiene de todos modos: 4,5x el tiempo total, 12x los segundos de CPU, y 1,9x la memoria para el archivo idéntico. Ninguno de los dos lados está limitado por el disco aquí - el brazo de una pasada necesita unos 0,73 GB/s de los 0,99 del disco, y Newsbin promedia un tercio de eso mientras mantiene ocupados casi cuatro núcleos de procesador durante ocho minutos - así que la brecha es el cliente, no el hardware. Ambos clientes descargaron los mismos bytes de cable para la carga útil. Newsbin es una marca registrada de CMCE, Inc.; el cliente lo publica DJI Interprises, LLC.

El censo

Lo que usenet publica en realidad, y cuánto pasa por una sola pasada

Reponderado en agosto de 2026 sobre una población mucho más grande. El censo de julio de más abajo leyó dos grupos; el índice que hay detrás ahora contiene 13,2 millones de lanzamientos y 174,7 TB en 114 grupos, y la mezcla se movió - los archivos 7z crecieron de menos del 2% de los bytes a una parte importante. Vuelto a medir sobre esa población, alrededor del 95% de los bytes de los lanzamientos completos pasa por una sola pasada (del 94,3% al 96,3% según cuatro formas de cortar la población), y el calificador que de verdad importa no es la forma del archivo sino la contraseña: alrededor de un tercio de los bytes necesita una para producir salida siquiera, sea cual sea el cliente que ejecutes. La instantánea de julio se queda más abajo, como la instantánea que es.

Para el censo de julio miramos 890.852 lanzamientos, 1,6 millones de archivos y 79,6 TB en los dos grupos de películas y series más concurridos, y luego descargamos y leímos las cabeceras de archivo de mil publicaciones reales para confirmar lo que los nombres de archivo solo insinuaban. Contado por bytes en vez de por publicación, porque un millón de archivos diminutos importa menos que uno grande.

Eso replanteó en qué trabajamos. Tiene poco sentido afinar una vía de compresión que carga el 1,4% de los datos, así que afinamos las dos que cargan el resto.

El cifrado tampoco se reparte de manera uniforme. Escala con el tamaño:

Tamaño del lanzamientoParte de todos los datosAlmacenadoCifrado
1-5 GB29%94%2%
5-20 GB39%97%2%
20-60 GB20%67%33%
más de 60 GB12%51%49%

Las descargas normales casi siempre son archivos almacenados sin más. Las grandes son un cara o cruz entre almacenado y cifrado. La forma almacenada es la que enfrenta cada tabla actual de esta página; la historia de disco de la forma cifrada se mide en su propia sección más abajo.

La publicación dañada · vuelta a correr el 24 de agosto de 2026, todas las versiones actuales

Cuando la publicación tiene agujeros: 6,5 GB con 60, 20 y 5 artículos muertos

Los artículos expiran, los servidores los descartan en silencio, las subidas llegan incompletas - y el daño es donde la brecha entre clientes es más ancha, así que consigue su propia ronda con la versión más reciente de cada cliente, nzbfast v1.2.2 incluido: máquina «Europa» de 10 GbE, cinco proveedores, 100 conexiones por cliente, el mismo lanzamiento de 6,5 GB envenenado en tres niveles de daño, tres repeticiones por brazo con el orden alternado, cada tramo verificado byte a byte contra el archivo limpio. 63 de 65 tramos volvieron idénticos byte a byte; los dos que no lo hicieron se nombran más abajo, porque son resultados.

tiempo hasta un archivo verificado y usable (media de 3)60 artículos muertos20 muertos5 muertos
nzbfast 1.2.213,0 s10,0 s8,7 s
nzbfast 1.2.2, reparación temprana desactivada29,3 s19,0 s12,3 s
NZBGet 26.3-testing33,0 s23,7 s23,0 s
SABnzbd 5.1.148,0 s¹28,0 s24,3 s
rustnzb 1.4.5107,3 s²51,3 s47,0 s
Weaver 0.7.8no terminó³no terminó³194,0 s

Por qué la publicación dañada es rápida aquí. Cuando falta un artículo, un cliente normalmente pregunta al siguiente servidor, y luego al siguiente, hasta que todos los servidores lo han rechazado - un recorrido en serie cuyos rechazos tardan entre decenas de milisegundos y un par de segundos cada uno, durante los cuales la descarga se queda en cero. nzbfast deja de preguntar: en cuanto los datos de paridad que ya tiene en la mano cubren lo que todavía falta, repara de inmediato en vez de terminar el recorrido. Esa es la segunda fila - el mismo binario con ese comportamiento desactivado es de 1,4x a 2,3x más lento según el daño - y la ronda verificó que el mecanismo se activó en cada tramo habilitado y nunca en uno deshabilitado. Contra el rival más cercano el margen es de 2,4x a 2,7x, sin solapamiento en ninguno de los nueve pares de repeticiones.

El disco es donde el margen es más ancho, y no es por el truco de reparación. Cada brazo que terminó produjo el mismo archivo de 6,48 GB; el nuestro movió 6,2-6,8 GB de E/S de disco haciéndolo, NZBGet 12,7-18,5 GB, SABnzbd 13,9-20,3 GB y rustnzb 12,8-13,1 GB. Eso es la tubería de una pasada - la fila desactivada mueve los mismos 6,2 GB - así que se mantiene tanto en publicaciones dañadas como en publicaciones sanas.

¹ Los tres tramos de SABnzbd con el daño más pesado fueron 43, 41 y 60 s - una dispersión genuina sobre entradas idénticas, así que se cita la media con el rango declarado. ² rustnzb 1.4.5 entregó cada tramo correcto byte a byte, y su coste está en tiempo de procesador y no en fiabilidad: unos 1.620 segundos de CPU frente a un reloj de 107 s con el daño más pesado - unos quince núcleos ocupados durante todo el tramo - donde la misma salida reparada nos cuesta a nosotros unos 50 segundos de CPU. ³ Weaver movió 1,5 GB y 4,9 GB de los 6,5 dentro de nuestro límite de 20 minutos en los dos niveles de daño más pesados - el mismo no-terminar en las tres rondas que lo han enfrentado, en tres noches distintas; el límite es nuestro y el no-terminar es el resultado. Con 5 artículos muertos completó correctamente las tres veces. Su coste de procesador ahí es su propia historia: unos 2.325 segundos de CPU para el tramo de 194 s, frente a nuestros 20.

Medido el 24 de agosto de 2026, todas las versiones actuales: nzbfast v1.2.2 (la propia etiqueta de publicación), NZBGet 26.3-testing (versión del 20 de agosto), SABnzbd 5.1.1, rustnzb 1.4.5, Weaver 0.7.8. Un brazo de continuidad enfrentó la versión de nzbfast de la noche anterior dentro de esta misma ronda y quedó a menos de un segundo de v1.2.2 en cada escenario, así que nada aquí depende de una noche con suerte; y las configuraciones de los rivales difieren de las de la ronda anterior solo en la ruta de la aplicación, comprobada clave por clave antes de que corriera la ronda.

La columna honesta

Los tramos que no ganamos

Esta sección existe para los tramos que gana un rival, y se vuelve a medir en cada ronda en vez de seleccionarse a mano: todo lo que perdemos va aquí, nombrado, junto a la tabla que lo muestra. En la versión actual, esta ronda, está vacía de pérdidas de velocidad - lo cual merece cautela más que satisfacción, así que las concesiones que quedan se declaran más abajo.

Lo que no ha desaparecido es la concesión detrás de esas cifras, así que eso es lo que dice esta sección ahora: gastamos más memoria que las herramientas independientes, y la vía rápida de reparación pesada es la que más gasta. Nuestro extractor y nuestro reparador están construidos para viajar junto a una descarga en vivo en vez de correr una vez desde una línea de comandos, y eso cuesta memoria residente; el detalle está junto a las tablas de componentes. Si tu restricción es la huella más pequeña posible para un trabajo de una sola vez, las herramientas dedicadas ganan esa columna y no vamos a fingir lo contrario.

Y la ronda del 23 de agosto de 2026 añade una entrada, que preferimos listar aquí antes que dejarla en una nota al pie: en el escenario de 6,5 GB, la mediana de procesador de Weaver es un 2% menor que la nuestra - 34,9 frente a 35,7 segundos de CPU, con sus propios tres tramos entre 34,1 y 56,1 s - así que lo llamamos empate estadístico, y aparece en la tabla de coste marcada como la única celda que no nos llevamos. En el escenario de 34 GB de la misma ronda nuestro CPU es el más bajo sin discusión.

¿Por qué mostrar siquiera una pérdida? Porque las victorias solo son creíbles junto a ella. Cada cifra de esta página viene de las mismas ejecuciones intercaladas, y un tramo que perdemos sigue publicado hasta que una nueva ejecución lo reemplace.

Hazlo pasar hambre de RAM · medido el 24 de agosto de 2026 en nzbfast 1.2.2

La escalera de baja memoria: 87 GB en ~0,3 GB de RAM

El mismo trabajo de 87 GB de la ronda de arriba, vuelto a correr con presupuestos de memoria fijos de 2 GB, 1 GB y 256 MB - lo que el autoajuste elegiría en una máquina de 8 GB, una de 4 GB, y un NAS de 2 GB. Cada tramo produjo el archivo idéntico verificado byte a byte, y la columna de memoria siguió al presupuesto, nunca al trabajo:

Trabajo de 87 GB, 10 GbEautopresupuesto de 2 GBpresupuesto de 1 GBpresupuesto de 256 MB
tiempo hasta archivo usable94 s87 s94 s102 s
memoria máxima (RSS)286 MB558 MB336 MB284 MB
E/S de disco (GiB)73,273,272,872,7

Un solo tramo por presupuesto sobre la versión publicada, comprobado contra la misma suma de comprobación de salida que la ronda de seis brazos. El presupuesto más ajustado cuesta alrededor de un 9% del tiempo total, y solo porque esta línea es 10 GbE - los bloques volcados a disco cuestan tiempo solo cuando la línea supera al disco, así que en una conexión doméstica típica un presupuesto pequeño sale casi gratis. Toda la escalera, descarga de 87 GB incluida, cabe en 0,3-0,6 GB de memoria; con la configuración de fábrica el trabajo corrió en 286 MB. Ningún otro cliente ofrece un presupuesto de memoria fijo para todo el proceso; lo más parecido son los ajustes de tamaño de caché, y la ronda de abajo mide lo que esos cuestan.

El tope enfrentado contra los propios ajustes del campo. En el escenario de 34 GB (23 de agosto de 2026, máquina de 1 Gbit, cinco proveedores, 30 de 30 tramos correctos byte a byte), imponerle a NZBGet un tope de caché equivalente más que dupli su CPU (de 215,5 a 453,0 segundos de CPU, 2,10x) para comprar un recorte del 52% en su memoria máxima, y el tope de SABnzbd fue casi gratis pero solo alcanzó parte de su huella. El ajuste de caché de rustnzb era decorativo en la versión enfrentada, y Weaver no tiene ningún ajuste de memoria, así que los dos corrieron sin tope como columnas de referencia en vez de puntuarse con un presupuesto que no pueden sostener. Nuestro propio lado de esa ronda queda superado por la escalera de v1.2.2 de arriba, que dice lo mismo a 2,5x el tamaño: el presupuesto nunca es la restricción vinculante, porque una pasada ya ocupa muy poco de entrada.

Espacio libre · medido al megabyte

Cuán poco espacio libre necesita un trabajo

Un cliente de escritura-y-luego-extracción necesita espacio para los volúmenes del archivo y para la carga útil descomprimida a la vez, así que un trabajo no arrancará sin tener libre aproximadamente el doble de la descarga. Una pasada solo necesita la carga útil - y esta ronda midió cuánto más, encogiendo el volumen de destino hasta que cada cliente fallaba. La respuesta de nzbfast es una constante de unos 50 MB de margen, no una proporción, y se mantiene desde un trabajo de 6,5 GB hasta uno de 34 GB.

espacio libre que necesita el trabajotrabajo de 6,5 GBtrabajo de 34 GB
nzbfast 1.2.2la salida + 48,6 MBla salida + 51,0 MB
NZBGet 26.3-testing~2.1x la carga útil~2.1x (37,6 GB por encima de la salida)
SABnzbd 5.1.1~2.1x la carga útil~2.1x (37,6 GB por encima de la salida)
rustnzb 1.4.5~2.25x la carga útil~2.25x (42,7 GB por encima de la salida)
Weaver 0.7.8~2.25x la carga útil~2.25x (42,7 GB por encima de la salida)¹

Medido en una máquina Apple Silicon de 20 núcleos, línea de 1 Gbit, cinco proveedores, tres repeticiones en cada límite, cada tramo completado verificado byte a byte - las filas de los rivales del 22-23 de agosto de 2026 (celda de 34 GB de Weaver repetida el 24 de agosto, nota 1), y la fila de nzbfast vuelta a cortar sobre la v1.2.2 el 24 de agosto, que reprodujo los dos límites con exactitud, 12 de 12 tramos unánimes en los dos escenarios. Nuestras celdas son un mínimo medido: el trabajo se completa 3 de 3 con 48,6 MB y 51,0 MB de margen, y se niega 3 de 3 unos 17 MB por debajo de eso - así que el mínimo es real en las dos direcciones. Lo que el trabajo realmente ocupa se asienta en la salida más unos 3 MB; el margen paga los últimos momentos de la tubería, nunca una segunda copia. Las celdas de los rivales son su mínimo medido en el trabajo de 6,5 GB y una suficiencia confirmada con la misma proporción en el de 34 GB (3 de 3 correctos byte a byte exactamente con esa proporción); no bajamos más su escalera en el tamaño mayor, así que su verdadero mínimo ahí puede estar algo por debajo de la proporción, y lo decimos así en vez de redondear a nuestro favor.

Lo que se ve al quedarse sin espacio importa tanto como el número. A 17 MB por debajo de su mínimo, nzbfast choca con el rechazo del disco al escribir, se detiene limpiamente con «sin espacio en disco», mantiene registrado todo lo que ya había llegado, y un reintento retoma sin volver a descargar - un parcial que conservas, no un trabajo fallido. ¹ La celda del escenario grande de Weaver quedó resuelta por una repetición el 24 de agosto: tres de tres tramos correctos byte a byte con el mismo ~2,25x, cada uno más rápido que el tramo bueno del primer intento, con el espacio libre idéntico hasta el byte. En el primer intento, el 23 de agosto, dos de sus tres tramos se habían atascado a velocidades de un solo dígito en MB/s con más de 60 GB todavía libres y chocaron con el límite de 40 minutos de la ronda. Esos atascos no volvieron, y la instrumentación de atascos del banco estuvo desplegada y en silencio en los tres tramos de la repetición, lo que es una medida positiva y no una ausencia de medida. Qué los causó sigue sin saberse, y una repetición limpia no es un diagnóstico: ahora hay seis tramos con esa proporción, cuatro completados, y los dos fallos vienen de una sola ventana de 80 minutos la primera noche.

La consecuencia del multiplicador

Tu disco marca tu límite de velocidad

Para cualquier disco, la velocidad de línea que puedes sostener durante la descarga, la verificación y la descompresión es la velocidad real del disco dividida entre el multiplicador de E/S del cliente. Las tablas de coste de arriba miden el nuestro en aproximadamente 1,0x - cada byte cruza el disco aproximadamente una vez - y cada rival entre 2,0x y 3,0x para una salida idéntica byte a byte. Así que el mismo disco sostiene de dos a tres veces la velocidad de línea con nzbfast que con un cliente de dos pasadas. La aritmética, con los multiplicadores tomados de las tablas medidas de arriba:

líneavelocidad de la carga útildisco necesario a nuestro ~1.0xa 2,2xa 3,0x
100 Mbit12,5 MB/s~13 MB/s~28 MB/s~38 MB/s
1 Gbit125 MB/s~130 MB/s~275 MB/s~375 MB/s
5 Gbit625 MB/s~650 MB/s~1.400 MB/s~1.900 MB/s
10 Gbit1,25 GB/s~1,3 GB/s~2,75 GB/s~3,75 GB/s

Pon esas columnas frente a lo que los discos realmente sostienen. Un disco NAS de 5400/5900 rpm sostiene aproximadamente 100-140 MB/s en sus pistas exteriores, decayendo hacia 80-100 a medida que se llena - así que un gigabit ya está al límite a 1,0x en la clase más lenta, cosa que decimos con claridad, y fuera de alcance a 2-3x. Un disco de 7200 rpm sostiene aproximadamente 160-220 MB/s. Los ~550 MB/s de un SSD SATA limitan a un cliente de 2,2x cerca de 2 Gbit y aguantan unos 3,5-4 Gbit a 1,0x. Los discos SMR, vendidos en bahías de NAS durante años, son el peor caso específicamente para el patrón de dos pasadas: la escritura sostenida con relectura puede desplomarse a decenas de MB/s en cuanto se agota el caché de reescritura por bandas del disco. Y una línea multi-gigabit es el mismo muro más arriba: 10 Gbit con un multiplicador de 2-3x exige 2,75-3,75 GB/s sostenidos, por encima de todos los discos SATA y de muchos discos NVMe en cuanto un trabajo grande supera su zona de caché rápido, mientras que a 1,0x un SSD de ~2 GB/s sigue el ritmo de la velocidad de línea con margen de sobra.

Medido, no afirmado, sobre un disco limitado. Limitamos un disco a 150 MB/s - una velocidad de la clase 5400 rpm - y corrimos la misma descarga dos veces: una en una pasada, otra siguiendo la escritura, relectura y descompresión del patrón de dos pasadas. El brazo de una pasada siguió el ritmo de la línea de 1 Gbit a 109,9 MB/s, un 0,2% por debajo de su propia velocidad sin límite; el patrón de dos pasadas cayó a 59,0 MB/s, el 54% de la línea. Barrido paramétricamente sin límite de línea, el brazo de una pasada tomó el 97% de lo que el disco ofrecía en cada límite (290,7 MB/s de un límite de 300 MB/s, 145,6 de 150) con una E/S de disco medida de 1,00-1,03x, y el patrón de dos pasadas tomó el 47-48% con una E/S medida de 3,02x - la proporción constante a través de los límites, que es la aritmética de arriba reproducida como medición. 32 tramos, cada salida verificada byte a byte.

Y una vez sobre hardware real, sin limitar. El disco más lento de nuestra flota de pruebas es un disco de sistema TLC en una máquina Windows nativa de 10 GbE, que sostiene 0,99 GB/s de escritura donde nuestra máquina de pruebas más rápida sostiene 5,97. La ronda de Windows de 87 GB de arriba corrió sobre él: el brazo de una pasada necesitó unos 0,73 GB/s de esos 0,99 para sostener 105 s de tiempo total - margen de sobra en el peor disco de la flota - que es la celda superior derecha de la tabla de arriba aterrizando sobre un disco real en vez de uno limitado. Y el extremo rápido de la flota cierra el argumento desde el otro lado: el mismo trabajo de 87 GB, a máxima velocidad en 10 GbE, termina en los mismos 70-71 segundos sobre un disco de 1,24 GB/s y sobre uno de 5,97 GB/s - un disco 4,8x más rápido no mueve el tiempo total nada, porque con un multiplicador de 1,0x la línea se agota mucho antes que el disco. Para un cliente de dos pasadas, esos dos discos son mundos distintos.

Qué es y qué no es ese banco de pruebas. El disco se limitó con un controlador de E/S del sistema operativo dentro de una máquina virtual en una máquina Apple Silicon de 32 núcleos, y el brazo de dos pasadas es nuestro propio binario hecho para escribir, releer y reescribir como lo hace un cliente de dos pasadas. Ningún rival corrió en él - la línea simulada del banco sirve archivos planos que un rival también manejaría en una pasada, así que apuntar uno a él no demostraría nada - lo que significa que la tabla de arriba es aritmética anclada en un par medido, con los multiplicadores de los rivales tomados de las tablas reales de cinco clientes de arriba, y lo etiquetamos así a propósito. Van con ella tres notas de honestidad. El controlador presupuesta lecturas y escrituras por separado, lo que favorece al brazo de dos pasadas; en un dispositivo con un solo presupuesto, que es todo disco giratorio, su parte sería todavía menor. El multiplicador de dos pasadas es de aproximadamente 2x cuando los volúmenes todavía están en el caché de páginas al releer y de 3x cuando no lo están, así que un trabajo grande en una máquina normal se sitúa en el extremo de 3x. Y el coste de posicionamiento de escribir, releer y borrar cientos de archivos de volumen - frente a un archivo escrito una vez en orden - es un argumento a partir de la forma del tráfico, todavía no una medición: necesita un disco giratorio, y lo citamos como argumento hasta que lo tenga.

Forma dos · el cara o cruz de los lanzamientos grandes

Archivos cifrados: una pasada, como todo lo demás

La mitad de todo lo publicado por encima de 60 GB es un archivo cifrado, y es la forma donde los clientes de dos pasadas pagan más: los datos bloqueados hay que escribirlos, releerlos, desbloquearlos y volver a escribirlos. nzbfast desbloquea cada trozo a medida que llega, así que los datos bloqueados nunca llegan a tocar el disco. Medido sobre un lanzamiento cifrado real de 94 GB:

Lanzamiento cifrado de 94 GB, una pasadamedido
Escrito en disco90,1 GB - aproximadamente la carga útil, una vez
Disco máximo usado a la vez89,6 GB - el propio archivo de salida
Pausa después de la descarga0,6 s

El disco máximo usado a la vez es el tamaño del archivo que pediste. No hay ningún momento durante una descarga cifrada en que nzbfast necesite espacio para una segunda copia, ni una pasada de desbloqueo después de que se llena la barra de descarga - un cliente de dos pasadas paga aproximadamente el doble en las tres filas, que es el mismo 2x que las tablas de coste de arriba miden en cualquier otra forma.

La forma que tiene

Disco en uso durante una descarga cifrada de 94 GB. El patrón de dos pasadas y la línea de una pasada se siguen exactamente hasta que termina la descarga, y entonces la de dos pasadas se dispara a 166 GB mientras la línea de una pasada se mantiene plana en 90 GB.

Disco en uso durante una descarga, muestreado cada cinco segundos. La línea plana es nzbfast; la línea que sube a 166 GB al final es el patrón de escritura-y-desbloqueo, pagando por el archivo terminado mientras la copia bloqueada todavía está en el disco - medido corriendo los dos patrones sobre el mismo lanzamiento.

Publicaciones anidadas · medido el 28 de agosto de 2026

Diez formas de empaquetar una publicación, y quién llega de verdad al archivo

Buena parte de lo que se publica es deliberadamente difícil de abrir. El nombre real del archivo queda enterrado dentro de un segundo contenedor, a veces un tercero, a veces en un formato distinto en cada nivel, para que la publicación revele lo menos posible sobre lo que contiene. A eso se suma que las publicaciones llegan dañadas: los artículos caducan, las subidas llegan incompletas y hay que usar los datos de recuperación antes de poder extraer nada. Un cliente recorre esa cadena por usted, o le entrega una carpeta de archivos y se detiene.

Así que construimos diez formas que aíslan exactamente eso, enfrentamos a cada cliente actual con ellas y luego hicimos lo que las comparativas suelen omitir: donde un cliente se detuvo antes de tiempo, terminamos el trabajo a mano con las herramientas estándar y lo cronometramos también. Un cliente que se rinde rápido parece veloz hasta que se cuenta el trabajo que le deja a usted.

diez formas empaquetadas y dañadasterminado por sí solosolo tras reparación manualnunca llegó al archivo
NZBGet 26.32 de 1080
SABnzbd 5.1.25 de 1032
nzbfast 1.2.410 de 1000
rustnzb 1.4.57 de 1012
Weaver 0.7.81 de 1018

nzbfast es el único que termina las diez sin ayuda. NZBGet también llega al archivo en todas las formas, pero necesita 16 rondas de reparación y extracción manuales en ocho de ellas. SABnzbd termina cinco sin ayuda y dos resultan inalcanzables incluso a mano. Weaver llega al archivo en dos.

El patrón no es casual. Las formas que nzbfast recorre y las demás no son las empaquetadas y las dañadas: un contenedor dentro de otro, un cambio de formato a mitad de camino, una cadena de cinco niveles y, sobre todo, un contenedor que llega corrupto con sus propios datos de recuperación al lado. En esta última, cuatro clientes extraen el conjunto exterior perfectamente, le entregan el contenedor defectuoso junto con el conjunto de recuperación que lo arreglaría, y se detienen.

Donde los clientes realizan el mismo trabajo, la diferencia no es pequeña. Estas son las siete formas que alcanzan los cuatro clientes principales, contando la reparación manual que necesitó cada uno:

las siete formas que alcanzan los cuatrotiempo hasta un archivo utilizableescrito en disco
NZBGet 26.351,2 s29,83 GB
SABnzbd 5.1.252,3 s32,27 GB
nzbfast 1.2.410,3 s11,68 GB
rustnzb 1.4.541,8 s27,75 GB

De cuatro a cinco veces más rápido, con menos de la mitad de los bytes escritos. La cifra de disco es la que sigue importando después de la descarga: cada gigabyte de esa columna es un gigabyte que su unidad tuvo que absorber, y los clientes que usan una zona intermedia escriben el contenido, lo vuelven a leer y lo escriben otra vez.

Dónde no vamos por delante, y por qué conviene decirlo. En cuatro de las diez formas un competidor escribe menos bytes que nzbfast durante la propia descarga. En todos los casos es porque hizo menos: en la forma con contenedor interno corrupto, NZBGet escribe 3,29 GB frente a nuestros 4,65, y luego su pasada de reparación escribe otros 2,91, terminando en 6,20 GB frente a nuestros 4,65. En las demás, el cliente que menos escribió es uno que nunca llegó al archivo. Una cifra baja de disco no siempre es ahorro.

Estas son pruebas de capacidad, no de velocidad. Los contenidos son pequeños y se sirven desde memoria por una conexión local, sin proveedor ni red por medio, así que nada aquí está limitado por la velocidad de descarga y los segundos absolutos son mucho más cortos de lo que esas mismas formas tardarían en el mundo real. Que una forma requiera o no trabajo manual es una propiedad de la forma y del cliente, y se traslada directamente. Los segundos comparan clientes haciendo un trabajo idéntico, no predicen cuánto durará una tarea real.

Los resultados completos por forma, qué es cada forma y el método están en la página de datos de archivos anidados.

Por qué importa

Tu disco hace la mitad del trabajo

El almacenamiento flash se desgasta por escribir en él. Un lanzamiento de 94 GB le cuesta a tu disco unos 90 GB de escritura con nzbfast; con un cliente que hace dos pasadas y descomprime, el mismo lanzamiento cuesta aproximadamente el doble. En un NAS con discos duros, la forma de una pasada también elimina la larga pasada de un solo hilo al final de cada descarga cifrada - una pausa medida en 20 segundos en una estación de trabajo rápida de 32 núcleos con desbloqueo acelerado por hardware, y correspondientemente más larga en las máquinas de bajo consumo donde la mayoría de la gente realmente ejecuta esto. Citamos el número pequeño porque es el que medimos.

Comparativas de componentes

Los benchmarks más técnicos, para quien quiere más datos

Reparar (PAR2) y descomprimir (RAR) son código nativo nuestro, no binarios de terceros empaquetados, así que también los enfrentamos por separado contra las herramientas dedicadas sobre corpus idénticos, en cuatro máquinas que abarcan lo que un lector podría realmente tener. Un tiempo solo cuenta cuando la salida es idéntica byte a byte a la carga útil de origen: cada cifra de RAR de más abajo se comprobó con sha256 contra el origen, y cada archivo reparado contra el conjunto prístino.

4 máquinas, de portátil a 32 núcleos 7 formas de archivo RAR 6 extractores enfrentados 1 GB de carga útil por forma mejor de 3 intercalados, caché caliente

Extracción de RAR: 7 formas de archivo, 6 herramientas

La ronda anterior de esta tabla usaba entre 100 MB y 200 MB por forma, lo cual fue un error: unos 28 ms de arranque de proceso eran el 40% del tramo «store», y el orden que producía no sobrevive a un tamaño realista. Esta ronda es 1 GB de carga útil por forma, y cambia varias respuestas, incluidas algunas en el sentido contrario. Los archivos se crean con el rar 7.23 oficial, así que ninguna herramienta se juzga con una entrada de su propio codificador, y los mismos bytes se enfrentan en cada máquina.

Lo que hay dentro de la carga útil importa más de lo que parece. Una carga útil hecha de copias de bloques convierte cada forma comprimida en un benchmark de copia de memoria; una carga útil de texto puro la convierte en un benchmark de literales y Huffman; medimos las dos y no coinciden en quién gana. Así que las cuatro formas comprimidas usan tercios iguales de texto, registros estructurados y bytes incompresibles, y las dos formas en los extremos de ese rango son tramos separados a propósito: store es incompresible y repetitive es casi todo coincidencias. El generador y el arnés están en el repositorio, así que el corpus se puede reconstruir byte por byte.

Vuelto a correr el 23 de agosto de 2026 sobre el motor 1.2.2, y el barrido se mantiene. Las tres herramientas que un lector más suele sopesar - la nuestra, unrar 7.23 y rarpar 0.2.5 - se volvieron a enfrentar en el escritorio de 32 núcleos sobre el motor publicado (el código de extracción enfrentado es idéntico byte a byte a la etiqueta 1.2.2), seis rondas intercaladas, el mínimo por herramienta, la salida de cada tramo comprobada contra el manifiesto de la carga útil. Segundos, menos es mejor:

Carga útil de 1 GB, 32 núcleos (23 ago 2026)store400 archivos pequeñossolidrepetitivegrande, 3 volúmenescifradodiccionario de 128 MiB
nzbfast 1.2.20,1190,4741,5150,1201,1181,1371,146
unrar 7.230,1902,0321,7840,1391,6551,8461,420
rarpar 0.2.50,2062,5632,3950,2371,8521,8571,725

Las siete formas nuestras, en el mínimo y en la mediana, de 1,16x a 4,29x contra unrar. Estos tiempos no son comparables celda por celda con la tabla más amplia de abajo - el arnés se ha revisado desde las rondas de esa tabla y los recuentos de rondas difieren - así que lee cada tabla contra sí misma. La tabla más amplia conserva sus propias fechas y su campo de seis herramientas, y su columna de nzbfast describe el motor que trae la 1.2.2: la vuelta a correr de arriba midió el nivel de motor actual con la versión de esa tabla en las siete formas, resuelto por conteo de instrucciones de hardware (0,14% menos para el mismo tiempo total), así que esas celdas no son las cifras de una versión superada llevando una etiqueta actual. Esta vuelta a correr es también donde se ganó la regla A/A de la sección de montaje. Un pase el mismo día primero reportó una forma como una pequeña regresión contra nuestra propia versión anterior, y la lectura sobrevivió a correr los dos órdenes de brazo. Un control A/A - el mismo binario enfrentado contra una copia idéntica byte a byte de sí mismo - mostró que el arnés le daba al brazo que corriera primero una penalización de aproximadamente 1,5%: el binario idéntico ganó solo 6 de 15 rondas desde la primera posición, y intercambiar los órdenes no cancela un sesgo que siempre recae en quien va primero. El conteo de instrucciones de hardware resolvió la pregunta que el arnés no pudo - la versión más nueva retira un 0,14% menos de instrucciones para el mismo reloj, así que no había ninguna regresión. Cada comparación de nuestra-versión-contra-nuestra-versión que publicamos ahora lleva ese control.

Todo el campo, segundos, menos es mejor. Mejor de tres, herramientas intercaladas dentro de cada ronda en vez de corridas en bloques, salida comprobada contra la carga útil de origen en cada ejecución. Una herramienta que produjo bytes incorrectos se lleva una nota de corrección, nunca un tiempo rápido. rarpar es el propio código RAR y PAR2 de Weaver, compilado desde el código fuente en bd87611; fijamos el commit en vez de una versión porque sus crates llevan tres números de versión distintos.

segundos, 1 GB por formastore400 archivos pequeñossolidrepetitivegrande, 4 volúmenescifradodiccionario de 128 MiB
Escritorio de gama alta, 32 núcleos
nzbfast0,210,471,260,141,081,091,07
unrar 7.230,212,021,620,161,611,821,37
rarpar0,232,552,220,261,751,741,64
unar 1.10.70,606,405,290,695,416,884,03
bsdtar0,3413,6711,481,86salida incorrecta²sin cifrado³sin diccionario grande⁴
7-Zip0,30no compatible¹no compatible¹no compatible¹no compatible¹no compatible¹no compatible¹
Escritorio más antiguo, 20 núcleos
nzbfast0,160,571,830,151,501,511,40
unrar 7.230,252,482,310,202,282,491,84
rarpar0,283,153,000,312,262,261,97
unar 1.10.70,677,496,930,856,858,495,29
bsdtar0,3315,5813,972,18salida incorrecta²sin cifrado³sin diccionario grande⁴
7-Zip0,33no compatible¹no compatible¹no compatible¹no compatible¹no compatible¹no compatible¹
Portátil, 14 núcleos / 20 hilos, Windows⁵
nzbfast0,351,052,920,322,322,222,04
unrar 7.230,636,376,140,622,923,332,44
rarpar0,7411,589,760,542,722,852,38
unarsin CLI⁵sin CLI⁵sin CLI⁵sin CLI⁵sin CLI⁵sin CLI⁵sin CLI⁵
bsdtar0,8116,7215,141,13salida incorrecta²sin cifrado³sin diccionario grande⁴
7-Zip0,765,455,790,654,214,132,51
Portátil, Apple M5 Max⁶
nzbfast0,100,401,150,100,980,990,94
unrar 7.220,161,941,870,151,751,911,52
rarpar0,112,091,970,181,541,551,33

Dónde no pudo competir el campo, y por qué. ¹ El 7-Zip enfrentado aquí es el paquete de Homebrew, que rechaza cada forma comprimida con ERROR: Unsupported Method y solo lee la almacenada en macOS. Una versión anterior de esta página lo achacó a la compilación de 7-Zip para macOS, lo cual era incorrecto: Homebrew lo compila sin el códec unRAR no libre, mientras que la compilación para macOS que distribuye 7-zip.org sí lleva el códec y decodifica las siete formas, igual que la compilación para Windows. Vuelto a medir el 14 de agosto de 2026. Si instalas 7-Zip desde el proyecto en vez de desde Homebrew, esta columna no describe lo que tienes. ² bsdtar no admite RAR5 multivolumen y produjo un archivo truncado sin reportar ningún error, así que ese tramo es un fallo de corrección y no un tiempo lento; nuestro arnés lo detectó comprobando la salida, que es justo por lo que vale la pena comprobar la salida. ³ bsdtar: Encryption is not supported. ⁴ bsdtar: Declared dictionary size is not supported. ⁵ unar no distribuye ninguna herramienta de línea de comandos para Windows, así que el campo del portátil es de cinco. ⁶ El grupo M5 Max enfrenta las tres herramientas a las que realmente recurriría un lector de macOS - unrar, rarpar y la nuestra; unar, bsdtar y 7-Zip no se enfrentaron en esa máquina. Su unrar es el 7.22, la versión más reciente que corre ahí sin supervisión.

Todas las formas en todas las máquinas menos una, y esa es un empate. Las formas de coincidencias cortas se reducen a dos cosas concretas de nuestro decodificador. Una coincidencia de dos a treinta y dos bytes solía pagar una llamada completa a la rutina de copia de memoria de la plataforma, y la llamada costaba más que la copia; copiar en su lugar treinta y dos bytes fijos a través de un registro es por qué repetitive, solid y el diccionario de 128 MiB - las tres formas construidas con coincidencias cortas - son todas rápidas a la vez. Y la suma de comprobación corre aguas abajo del hilo del escritor en vez de sobre él. La única celda que no ganamos claramente es la forma «store» en el escritorio de 32 núcleos, donde unrar y nosotros estamos a tres milisegundos de distancia en un tramo que es puramente mover bytes - idéntico a la precisión de esta tabla, así que las dos celdas están marcadas y se puntúa como empate, ni pérdida ni victoria.

La forma en la que ganamos por más margen es la que usenet realmente publica a cientos a la vez: 400 archivos pequeños, 4,3× y 4,4× contra unrar y de 5,4× a 5,5× contra rarpar. Eso es paralelismo por miembro, y es la diferencia entre un extractor escrito para una cola de descargas y uno escrito para una línea de comandos. La forma «store», que el censo de arriba dice que es el 84% de los bytes que van por el cable, es un empate casi perfecto para las tres herramientas serias, porque a ese punto todo el mundo simplemente mueve bytes.

Una decisión que vale la pena declarar. Los archivos se empaquetan con el compresor fijado a cuatro hilos. La división en bloques de RAR, si no, sigue el número de núcleos de la máquina que empaquetó el archivo, así que una máquina de 32 núcleos y una de 20 núcleos producen bytes distintos a partir de la misma entrada y las máquinas dejan de ser comparables. Fijarlo hace que el corpus de extracción sea idéntico byte a byte en todas partes, que es el objetivo, pero también limita cuánto de la decodificación puede correr en paralelo - así que cuando las dos formas más cercanas eran pérdidas, las volvimos a enfrentar contra archivos empaquetados con los 32 hilos, para comprobar que no era la fijación lo que lo causaba. No lo era: «solid» pasó de un 4,2% por detrás a un 2,4% por detrás y el diccionario de 128 MiB de un 6,6% a un 6,3%, el mismo orden en ambos casos. Las dos son ahora victorias en el corpus fijado por un margen más amplio del que esa comprobación podría explicar.

Por qué no hay fila para RAR4, y qué pasa con esas publicaciones. Todas las formas de arriba son RAR5 o RAR7, que es lo que usenet publica hoy. Todavía aparecen archivos RAR4 más antiguos, y el mismo motor los lee, incluidas las formas comprimidas y protegidas con contraseña, en la misma pasada única que los más nuevos en vez de escribir los volúmenes en disco y descomprimirlos después. No tienen fila aquí porque el rar 7.23 oficial ya no puede crear RAR4, así que no hay corpus neutral sobre el que enfrentar al campo; ese trabajo se comprueba en su lugar contra archivos escritos con WinRAR 3.00, byte por byte contra unrar.

Verificación y reparación PAR2: conjunto de 1 GiB, cuatro niveles de daño

Corpus: 1 GiB de carga útil aleatoria empaquetada en modo «store» en 21 volúmenes RAR, luego dos conjuntos PAR2 al 10% de redundancia, uno con bloques de 1 MiB y otro de 64 KiB, y luego mapas de daño fijos. Cada ejecución usa el mismo protocolo: copia fresca, leer todo el corpus una vez para calentar el caché, y luego cronometrar. Mejor de tres rondas intercaladas; cada volumen reparado se compara contra el conjunto prístino en cada ronda. Menos es mejor.

Una corrección sobre el corpus, porque una versión anterior de esta página lo exageró. Decíamos que cada máquina corría un corpus idéntico byte a byte, comprobado por hash. Calcular el hash de cada volumen de cada conjunto muestra que eso es cierto en el escritorio de 32 núcleos y en el portátil Windows, que coinciden exactamente, y no en el escritorio de 20 núcleos, que tiene un sorteo aleatorio distinto de la misma forma: los mismos 21 volúmenes con los mismos tamaños, los mismos dos tamaños de bloque, y el daño verificado en los mismos 3, 101 y 1.500 bloques repartidos entre el mismo número de archivos. Cada cifra dentro de una fila se sigue midiendo sobre bytes que comparte cada herramienta de esa fila, que es en lo que descansa cada comparación. Pero las filas no son cuatro vistas de una sola entrada, y como el carácter de la carga útil vale alrededor de un 7% para el escaneo de un competidor, vale la pena declararlo en vez de pasarlo por alto.

Qué par2 es cuál. El par2cmdline original es la implementación de referencia de la que todos se bifurcaron. par2cmdline-turbo es la bifurcación que incorpora los núcleos de campo de Galois SIMD escritos a mano de ParPar: eso es precisamente lo que significa «turbo», y es por lo que turbo, en vez del original, es la herramienta que vale la pena medir. Las dos columnas turbo de abajo corren esos mismos núcleos de ParPar. Lo que las separa no es la aritmética sino la compilación y los flags.

Confirmado sobre la versión publicada contra el rival actual, 24 de agosto de 2026. Estas tablas se midieron antes de que se cortara la 1.2.2 y antes de que par2cmdline-turbo publicara la 1.5.0 (20 de agosto de 2026), así que la columna de 20 núcleos se volvió a enfrentar con las dos: nuestra versión publicada 1.2.2 contra turbo 1.5.0, tres rondas intercaladas por tramo, cada archivo reparado comparado contra el conjunto prístino. Los cuatro tramos se reproducen - los nuestros 0,18 / 0,30 / 0,75 / 2,02 frente a los 0,19 / 0,33 / 0,74 / 2,07 impresos aquí, y turbo 1.5.0 queda dentro de unos pocos puntos porcentuales de la versión de la tabla en cada tramo y en las dos configuraciones. Las celdas se mantienen tal como se publicaron; las otras tres máquinas conservan sus propias fechas.

Así que la competencia aparece dos veces, y una de esas columnas es su mejor caso y no su configuración por defecto. El binario de publicación que descargarías está compilado para una CPU base genérica y solo hashea un par de archivos a la vez; compilar el mismo código fuente para la CPU real del equipo y pasar -T16 le permite usar las instrucciones que esa máquina realmente tiene y hashear dieciséis archivos a la vez. En el portátil eso vale hasta 2,6x, enteramente por la compilación y los flags. Júzganos por la columna ajustada, que es la comparación más dura; la columna de fábrica es lo que en realidad experimenta quien se lo descarga. par2cmdline es el original, versión 1.2.0, compilado desde el código fuente en cada máquina. rarpar es la propia implementación de PAR2 de Weaver, compilada desde el código fuente con su backend de GPU Metal activado. El par2j de MultiPar es solo para Windows, así que aparece únicamente en las filas del portátil Windows. Las filas de M5 Max enfrentan a las dos herramientas con compilaciones actuales de macOS arm64 junto a las dos columnas turbo; el par2cmdline clásico no se enfrentó en esa máquina.

segundos, conjunto de 1 GiBescritorio, 32 núcleosescritorio, 20 núcleosportátil, 14 núcleosportátil, M5 Max
sin daño - verificación limpia
nzbfast0,110,190,230,18
par2-turbo, ajustado0,310,380,420,28
par2-turbo, de fábrica0,861,121,060,80
par2cmdline3,033,843,81no enfrentado
rarpar2,623,452,962,32
MultiParsolo Windowssolo Windows1,34solo Windows
3 bloques dañados - unos pocos artículos muertos
nzbfast0,220,330,460,26
par2-turbo, ajustado0,510,660,780,48
par2-turbo, de fábrica1,081,461,421,00
par2cmdline3,644,584,98no enfrentado
rarpar4,275,534,993,64
MultiParsolo Windowssolo Windows1,71solo Windows
101 bloques dañados
nzbfast0,480,740,960,66
par2-turbo, ajustado0,881,171,400,85
par2-turbo, de fábrica2,042,652,691,84
par2cmdline5,577,5711,7no enfrentado
rarpar4,735,735,744,17
MultiParsolo Windowssolo Windows2,65solo Windows
1.500 bloques dañados - 91% de la recuperación usada
nzbfast1,002,072,461,61
par2-turbo, ajustado3,005,526,734,07
par2-turbo, de fábrica5,218,209,306,01
par2cmdline67,786,1403no enfrentado
rarpar7,1511,4914,226,91
MultiParsolo Windowssolo Windows5,40solo Windows

Las dieciséis celdas de nzbfast - cuatro máquinas en cuatro niveles de daño - son nuestras, varias por más de 2× contra la versión ajustada y de 2,3× a 7,7× contra la que realmente te descargarías. Las celdas de daño pesado son las interesantes, y la nota de abajo explica el algoritmo detrás de ellas.

El original vuelve a la tabla, y vale la pena ver por qué existe la bifurcación. Una versión anterior de esta página quitó la columna de par2cmdline alegando que era más lenta que todo lo demás de la ronda, lo cual es cierto y no es una razón suficiente: es la implementación de la que casi todas las demás herramientas descienden, y los lectores merecen la línea base en vez de nuestra afirmación sobre ella. En el nivel de daño más pesado tarda unos 69 s donde la bifurcación SIMD tarda 3,2 s y nosotros tardamos 3,1 s. Ese factor de veinte es todo el argumento a favor de los núcleos de campo de Galois escritos a mano, y es el mismo argumento que hacemos por los nuestros.

El daño ligero es el caso que importa. Un puñado de artículos fallidos es mucho más típico que 101 bloques muertos, y nada parecido a 1.500. La mayor parte de una reparación ligera no es en absoluto la matemática de Reed-Solomon, es leer y calcular MD5 de un gigabyte, que es por lo que la fila de 3 bloques sigue a la fila de verificación limpia en vez de a las de reparación.

El nivel de daño más pesado es un tipo de trabajo distinto, y se lleva un algoritmo distinto. Ese último nivel daña 1.500 bloques en los 21 volúmenes y consume alrededor del 91% de los datos de recuperación, que es donde la aritmética de Reed-Solomon, más que el hashing o el disco, se convierte en casi todo el trabajo. La versión publicada calcula las reparaciones más pesadas con una transformada teórico-numérica en vez del pliegue clásico de campo de Galois - la misma matemática, evaluada en una forma que escala mucho mejor con recuentos de bloques altos: 2,7× por delante de la versión ajustada en el escritorio de 20 núcleos, y en el portátil Windows 2,7× por delante de la versión ajustada y 2,2× por delante de MultiPar. El daño ligero sigue corriendo la vía clásica, que es por lo que los otros niveles apenas se movieron: la transformada solo compensa por encima de unos 512 bloques dañados, así que por debajo de eso el despachador no la usa.

Una vía más rápida solo vale la pena tenerla si no puede estar equivocada. Las dos vías calculan la misma cantidad y son idénticas a nivel de bit por construcción, y cada reparación de esta página se comprobó contra que los archivos reconstruidos coincidieran con el conjunto prístino: 228 reparaciones cronometradas entre las máquinas de esta ronda, cero discrepancias. La versión publicada no depende de ese historial. Cada reparación verifica su propia salida contra los hashes del archivo, y una que fallara se rehará automáticamente con la vía clásica, registrará la divergencia, y mantendrá la vía clásica para el resto de esa ejecución. El ajuste está en el panel como Modo PAR rápido si prefieres no tenerlo en absoluto, y las máquinas con muy poca memoria para él lo rechazan por sí solas en vez de intentarlo y fallar. Vuelto a medir el 2 de agosto sobre la versión actual: los dos escritorios quedan dentro de unos pocos puntos porcentuales de esta tabla, y con el Modo PAR rápido desactivado el escritorio de 20 núcleos vuelve exactamente al tiempo más lento de la vía clásica, que es lo que dice que la victoria es el método y no las condiciones.

La columna del portátil Windows necesitaba una corrección, y va en nuestra contra. Windows relega el trabajo sostenido en segundo plano a sus núcleos de eficiencia a los pocos segundos. Nuestro daemon renuncia a eso al arrancar y ninguna de las otras herramientas puede hacerlo, así que una versión anterior de esta página publicó sus tiempos limitados como si fueran los propios de las herramientas. Volver a correr esa máquina con cada herramienta elevada a prioridad alta mueve todo el campo: en el nivel de daño más pesado par2-turbo pasa de 22,4 s a 6,41 y rarpar de 59,2 s a 14,4, y en un corte de esta página eso convirtió la columna de nuestra en una que perdíamos. Toda la columna del portátil se mide así ahora - la corrección se mantiene aunque la fila se ha vuelto a ganar desde entonces por el cambio de algoritmo de arriba, porque los tiempos del campo en esa máquina solo son honestos con el límite levantado.

Registros de recuperación de RAR: reparar sin PAR2

Cuando PAR2 no puede cubrir el daño, el registro de recuperación dentro del propio RAR es la última línea de defensa. Hasta la 1.0.8 el nuestro fallaba en cualquier archivo de más de unos 13 MB, así que este tramo no se podía correr en absoluto. El daño son tres agujeros de 3.000 bytes al 20%, 50% y 80% de la región protegida. Las dos herramientas produjeron una salida idéntica byte a byte al archivo prístino, y la nuestra es idéntica byte a byte a lo que escribe el propio rar r. Mejor de tres, escritorio de 32 núcleos, las dos herramientas vueltas a enfrentar juntas el 2 de agosto.

16 MB32 MB128 MB512 MB2 GB
nzbfast0,0490,0590,1300,4001,527
rar 7.23 repair0,2780,4661,0652,2916,400
ventaja5,7×7,9×8,2×5,7×4,2×

Una versión anterior de esta página mostraba el tamaño de 512 MB como una pérdida, y lo explicaba como el precio de trabajar el volumen por partes en vez de tenerlo entero en memoria. Esa explicación era correcta en su momento y ahora está obsoleta: el coste era un CRC64 bit a bit en serie en la vía de reparación, sustituido por uno basado en tabla, y la pérdida se fue con él. Ya no hay ningún cruce, y se conservó el conjunto de trabajo acotado. El tamaño de 2 GB está aquí porque los volúmenes que un daemon realmente encuentra van de 8 GB a 20 GB, no 512 MB, y un tramo que se detiene por debajo del rango real no es mucha prueba.

Qué movió este corte, y el control que lo confirma. Encontrar qué bloques estaban dañados se había convertido en la fase más grande de esta reparación - más grande que la propia aritmética de reparación - y corría en un solo hilo, leyendo 64 KB de cada grupo a lo largo del archivo, una vez por grupo. Ahora hace una sola pasada secuencial en el orden del archivo con las sumas de comprobación por fragmento calculadas en paralelo, y el volumen reparado se clona en vez de copiarse donde el sistema de archivos puede hacerlo. Solo la detección cayó de unos 300 ms a 18 ms en el archivo de 512 MB, que es la mayor parte de lo que se movió arriba. El control es la columna junto a la nuestra: rar r se volvió a enfrentar en las mismas rondas en la misma máquina y volvió dentro de unos pocos puntos porcentuales de sus tiempos anteriores, así que el cambio en la brecha es nuestro y no del banco de pruebas.

El M5 Max repite el patrón, enfrentado el 31 de julio con el mismo corpus y las mismas comprobaciones: 0,050 / 0,066 / 0,171 / 0,581 s contra los 0,211 / 0,335 / 0,751 / 1,735 s de rar r en los tamaños de 16 MB a 512 MB - de 3,0× a 5,1× más rápido; el tamaño de 2 GB no se enfrentó en esa máquina. Esas cifras son anteriores a la reescritura de la detección descrita arriba, así que son de la versión más antigua, conservadas aquí como la segunda máquina y no como una cifra actual.

El rarpar de Weaver está ausente solo de esta tabla, y no por elección: no implementa esta reparación. Cuando se le pide arreglar uno de estos archivos responde "embedded Rar5 recovery record detected ... this API restores standalone .rev recovery volumes only and does not consume embedded RR/protect data", y deja el archivo dañado. Aparece en cualquier otra comparación de esta página: los cuatro tramos de PAR2 de arriba, las siete formas de extracción antes de eso, y el tramo de volúmenes de recuperación inmediatamente de abajo, que es el trabajo que dice hacer - y que gana.

Volúmenes de recuperación: reconstruir archivos .rev perdidos por completo

La otra mitad de la propia historia de recuperación de RAR, y hasta esta ronda la mayor pérdida de esta página. Un archivo .rev es un volumen de recuperación independiente: tres de ellos junto a un conjunto de 21 volúmenes pueden reconstruir cualesquiera tres volúmenes que nunca llegaron. Corpus: 1 GiB almacenado en 21 volúmenes de 50 MB con rar rv3, y luego se borran los volúmenes 4, 11 y 19 - tres perdidos contra tres volúmenes de recuperación, que es el peor caso que el conjunto todavía puede sobrevivir. Mejor de tres, cada volumen reconstruido comparado contra el prístino.

escritorio, 32 núcleosescritorio, 20 núcleos
nzbfast0,440,50
rar 7.23 rc0,460,58
rarpar restore-volumes0,480,61

La celda de 32 núcleos aquí era de 3,12 s contra los 0,47 de rar rc en el último corte de esta página, publicado como 6,6× más lento y el peor número de ella. La causa era que la resolución de borrado corría a unos 48 MB/s de salida reconstruida donde RARLab gestionaba 320; ahora corre sobre la misma aritmética basada en tabla que el resto del código de recuperación, lo que es una mejora de siete veces y convierte la pérdida en victoria en las dos máquinas. Los márgenes son 3% y 14%, así que es una victoria para declarar con sencillez en vez de para destacar en un titular, y la razón por la que se declara siquiera es que la pérdida se declaró primero.

Este tramo existe porque el rarpar de Weaver implementa exactamente esto y pidió ser medido en él. Iba ganando cómodamente cuando lo publicamos por primera vez, y lo publicamos entonces por esa razón.

La coincidencia de archivos nunca fue el coste, lo cual vale la pena registrar porque era el sospechoso intuitivo: los volúmenes de recuperación no llevan nombres de archivo, así que identificamos qué ranuras sobrevivieron calculando la suma de comprobación de cada volumen en disco en vez de confiar en cómo se llaman, y contra un conjunto sin daño, donde lo único que pasa es la coincidencia, toda la pasada tarda 0,18 s.

Qué más se movió, y dónde no se nota. Aterrizaron otros dos cambios de motor que estos corpus no pueden ver, listados aquí para que las cifras de arriba no se lean como toda la historia: los archivos RAR5 con decenas de miles de miembros resuelven cada miembro una vez en vez de recorrer la lista por cada trabajador, lo que es 3× menos tiempo de procesador con 40.000 miembros; y el lector de bits de RAR1.3 trabaja una palabra a la vez, lo que es 2×. Ninguno de los dos aparece arriba, porque las formas de aquí tienen 400 miembros y ningún RAR1.3.

Lo que deliberadamente no hacemos: nunca creamos PAR2. Un descargador no tiene razón para hacerlo, y ese tramo es de ParPar. También compramos velocidad con memoria en los dos motores: la extracción llega a un pico de unos 240 MB contra los 41 MB de unrar, y la verificación a unos 126 MB contra los 7 MB de turbo, porque estos son los motores integrados que viajan junto a una descarga en vivo en vez de ejecuciones únicas independientes. La forma con diccionario de 128 MiB es lo peor de ello, con unos 304 MB contra los 139 MB de unrar. La reparación más pesada ahora también cuesta memoria: el método más rápido para 512 o más bloques perdidos trabaja a partir de los datos de recuperación mantenidos residentes, así que se le permite hasta una cuarta parte de la RAM de la máquina, con un tope de 4 GB, y una máquina que no puede permitírselo pasa en silencio al método de baja memoria en su lugar - la misma aritmética y los mismos tiempos que las filas intermedias de la tabla de PAR2, solo que sin el 3× de la última. Si quieres el conjunto residente más pequeño posible para un trabajo independiente, las herramientas dedicadas siguen ganando esa columna.

Cada cifra de esta página es una ejecución fechada con su comando exacto y sus condiciones registradas, resultados negativos y enfoques abandonados incluidos. Estas páginas son el registro publicado, y se van completando a medida que llegan más rondas.

Capacidad, no micro-benchmarks

Qué puede hacer cada cliente

nzbfastSABnzbd 5NZBGet 26rustnzbWeaverUsenappNewsbin
NNTP en pipelinedesactivado de fábricano-⁷--
verificación completa durante la descargacada bloquedespuésverificación rápidadespuésdespuésdespuésdespués
extraer durante la descargaen flujo, sin volúmenes en discodescompresión directa⁴descompresión directa⁴por etapas, luego descomprime⁵nonono
disco necesario para una publicación de N GB~1×N~2×N~2×N~2×N~2×N~2×N~2×N
veredicto de completitud antes de descargarexacto a nivel de bloqueno% de saludno-⁷comprobación de artículosno
memoria acotada (nunca hace swap)con presupuestoajuste de límite de cachéajuste de cachénono--
eleva su propio límite de archivos abiertossí, al arrancar-⁸-⁸-⁸-⁸-⁸-⁸
comprobar el archivo en cualquier momento durante la descarganonononosecuencialno
indexador integrado + muro de publicadoressí, sin clavenonononointerfaz de búsquedaexplorador de grupos
reemplazo directo para Sonarr/RadarrAPI de SAB + NewznabnativonativoAPI compatible con SABRPC compatible con NZBGet⁷nono
controles remotos móviles (nzb360/LunaSea)no-⁷nono
captura automática de watchlist + mejorasintegradovía *arrvía *arrnonoWatchdogreglas
binario único autocontenidopaquetes de aplicación; Python en Linux.app.exe
código abiertoGPL⁶GPLGPLMITde pagode pago
plataformasmac/win/linux (x64 + ARM)/docker/flatpakmac/win/linux/docker/paquetes NASmac/win/linux/docker/NAS + integradolinux/win (mac desde el código fuente)binario mac; código fuente en otro lugar⁷solo macsolo win

⁴ La descompresión directa igual materializa primero los volúmenes: 2× escrituras y 2× disco. ⁵ rustnzb 1.4.5 entrega cada escenario correcto byte a byte en la ronda del 23 de agosto de 2026, y su E/S de disco medida ahí es de aproximadamente 2,1x la carga útil - así que hace dos pasadas de los volúmenes y descomprime después de la descarga en vez de extraer en flujo (ver las tablas de coste). Sus versiones más antiguas (1.3.4-1.3.9) entregaban volúmenes ofuscados marcados «Completed» sin extraer; ese fallo está corregido en origen desde la 1.4.5. ⁶ GPL-3.0-or-later. ⁷ Weaver 0.7.8, su binario publicado más reciente, con la identidad probada por hash (el sha256 del tarball de publicación publicado y el binario que hay dentro coinciden con lo que enfrentamos); sus filas medidas vienen de la ronda de coste del 23 de agosto, sus celdas de capacidad marcadas «-» son funciones que no hemos evaluado y no ausencias confirmadas; habla un RPC compatible con NZBGet, que es como lo maneja nuestro arnés, pero no hemos probado los controles remotos móviles contra él. Usenapp/Newsbin son lectores comerciales de una sola plataforma con funciones de descargador; están listados porque la gente pregunta, no porque compitan en velocidad.

⁸ macOS arranca un programa con un límite de 256 archivos abiertos, y un conjunto completo de conexiones a través de varios servidores puede superarlo. nzbfast eleva su propio límite al arrancar en macOS y Linux: pide 65.536, va bajando hasta que el sistema lo acepta, nunca sobrepasa el límite duro del sistema, y sigue con lo que tenía si se le rechaza en cada paso. Windows no tiene un límite de este tipo por proceso. Las otras columnas están sin evaluar y no son ausencias confirmadas: no hemos leído el código de arranque de ningún otro cliente. Vale la pena saberlo por cómo falla: un programa que se queda sin archivos abiertos a mitad de un trabajo tiende a desaparecer en vez de reportar un error.

Prueba de transporte · medido en la 1.2.2

El motor sigue el ritmo de líneas reales

Cortes anteriores de esta página llevaban un conjunto más amplio de demostraciones de transporte - ejecuciones de saturación multilínea, ganancias de pipelining por RTT, una prueba de contrapresión, mediciones de techo de decodificación - enfrentadas sobre versiones que la v1.2.2 ha superado desde entonces. Bajo la regla de esta página se retiran en vez de dejarlas envejecer, y vuelven a medida que se cortan de nuevo sobre la versión actual; las tres afirmaciones de arriba son las que ya se han vuelto a medir sobre v1.2.2.

Regla permanente: cada afirmación de rendimiento cita las condiciones bajo las que corrió, resultados negativos y caminos equivocados incluidos.