Ydelsen af Ubuntu-pakken jq er blevet forbedret med 1,9 gange ved at genkompilere.

Resultaterne af evalueringen af indflydelsen på ydeevnen ved genkompilering af pakker for Ubuntu med forskellige indstillinger og implementeringer af hukommelseshåndteringsfunktioner er offentliggjort. Eksperimentatoren formåede at forbedre ydeevnen af jq-pakken med 90% (1,9 gange) ved at genkompilere pakken fra den samme kildekode uden at ændre i selve koden. Ydeevnen blev vurderet ved at måle udførelsestiden for en typisk filtreringsforespørgsel på GeoJSON-data, der er 500 MB store.

Resultaterne af eksperimentet:

  • Varianten, der blev bygget i GCC fra de samme kildekilder med standardflag, viste sig at være 2-4% hurtigere end Ubuntu's binære pakke.
  • Genkompilering i Clang 18 med optimeringsniveauet '-O3', aktivering af optimering under linking ('-flto') og deaktivering af fejlinformation ('-DNDEBUG') resulterede i en hastighedsforøgelse på 20%.
  • Genkompilering med hukommelsesfordelingssystemet TCMalloc (tilføjelse af '-L/usr/lib/x86_64-linux-gnu -ltcmalloc_minimal' til LDFLAGS) resulterede i en hastighedsforøgelse på 40%.
  • Udskiftning af malloc-funktioner med hukommelsesfordelingssystemerne tcmalloc, jemalloc og mimalloc via 'LD_PRELOAD=/usr/lib/x86_64-linux-gnu/lib….so' resulterede i en præstationsforøgelse på 27%, 29% og 44%. Ved brug af mimalloc, som viste en hastighedsforøgelse på 44%, blev miljøvariablen 'MIMALLOC_LARGE_OS_PAGES=1' sat.
  • Genkompilering af pakken med mimalloc i LDFLAGS i stedet for at linke via LD_PRELOAD førte til en 90% hurtigere gennemløbstest. En anden test med behandling af 2,2 GB JSON-data i 13.000 filer viste også en præstationsforøgelse på cirka det dobbelte.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster