Se logró aumentar el rendimiento del paquete jq de Ubuntu en 1.9 veces mediante la recompilación

Se publicaron los resultados de la evaluación del impacto en el rendimiento de la recompilación de paquetes para Ubuntu con varias opciones y implementaciones de funciones de distribución de memoria. El experimentador logró aumentar el rendimiento del paquete jq, una herramienta para procesar datos en formato JSON, en un 90% (1.9 veces) mediante una recompilación estándar del mismo paquete desde el código fuente, sin realizar cambios en el propio código. El rendimiento se evaluó midiendo el tiempo de ejecución de una consulta de filtrado típica sobre datos GeoJSON de 500 MB.

Resultados del experimento:

  • La variante compilada en GCC a partir de los mismos archivos de origen con las banderas predeterminadas resultó ser más rápida que el paquete binario de Ubuntu entre un 2 y un 4%.
  • La recompilación en Clang 18 con el nivel de optimización ‘-O3’, habilitando la optimización en la etapa de enlace (‘-flto’) y deshabilitando la información de depuración (‘-DNDEBUG’) resultó en una aceleración del 20%.
  • La recompilación con el sistema de distribución de memoria TCMalloc (agregando ‘-L/usr/lib/x86_64-linux-gnu -ltcmalloc_minimal’ a LDFLAGS) resultó en una aceleración del 40%.
  • Reemplazar las funciones malloc por sistemas de distribución de memoria tcmalloc, jemalloc y mimalloc a través de ‘LD_PRELOAD=/usr/lib/x86_64-linux-gnu/lib….so’ resultó en un aumento del rendimiento del 27%, 29% y 44%. Al ejecutarse con mimalloc, que mostró una aceleración del 44%, se estableció la variable de entorno ‘MIMALLOC_LARGE_OS_PAGES=1’.
  • La recompilación del paquete con mimalloc en LDFLAGS en lugar de enlazar a través de LD_PRELOAD resultó en una aceleración del 90% en la prueba. Otra prueba que procesó 2.2GB de datos JSON en 13000 archivos también mostró un aumento en el rendimiento de aproximadamente el doble.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster