¿La clasificación por fusión de Linux es *más lenta* que la clasificación completa?

¿La clasificación por fusión de Linux es *más lenta* que la clasificación completa?

Estoy usando Linux merge sort (sort -m) para ordenar un grupo grande de archivos preclasificados. Supuse que la ordenación por combinación sería considerablemente más rápida que una ordenación completa de los datos sin ordenar, pero eso no es lo que estoy viendo. Por ejemplo, si hago una clasificación completa de 1000 archivos que contienen 10000 líneas de datos sin clasificar:

/bin/time -o ./full_sort.time -v sort --parallel 8 -k1,1g ./data/unsorted/f* > /dev/null

Veo los siguientes tiempos:

User time (seconds): 104.70
System time (seconds): 0.71
Percent of CPU this job got: 440%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:23.90

Ahora, si ordeno previamente los datos y ejecuto exactamente la misma clasificación mientras invoco la opción -m:

/bin/time -o ./merge_sort.time -v sort --parallel 8 -k1,1g -m ./data/presorted/f* > /dev/null

Veo estos tiempos:

User time (seconds): 59.34
System time (seconds): 2.15
Percent of CPU this job got: 99%
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:01.60

El tiempo del muro de clasificación de combinación es en realidadMás lentoque el tipo completo! Nuevamente, esperaba que la ordenación de la combinación fuera considerablemente más rápida ya que cada archivo de entrada en el conjunto de datos está preclasificado y solo queda por realizar el paso de combinación. Debe haber algo que me falta. ¿Alguien puede aclarar qué estoy haciendo mal?

Gracias, JCS

información relacionada