Az Ubuntu jq csomag teljesítménye 1,9-szeresére nőtt a rekonstrukcióval.

Közölve lettek a különböző opciókkal és a memóriaallokálási funkciók megvalósításaival végzett Ubuntu csomagok újraépítésének teljesítményére gyakorolt hatás értékelésének eredményei. A kísérletvezetőnek sikerült 90%-kal (1,9-szer) növelnie a jq csomag teljesítményét, amely JSON formátumú adatok feldolgozására szolgáló eszközként ismert, a forráskódjának átépítésével, a kód megváltoztatása nélkül. A teljesítményt a 500 MB méretű GeoJSON adathalmazon végzett tipikus szűrőlekérdezés végrehajtási idejének mérésével értékelték.

A kísérlet összefoglalója:

  • A GCC-ben a meglévő forrásokból alapértelmezett zászlókkal összeállított változat 2-4%-kal gyorsabb volt, mint az Ubuntu bináris csomagja.
  • A Clang 18 -O3 optimalizálási szinttel, a linkelési fázisban végzett optimalizálással («-flto»), és a hibakeresési információk kikapcsolásával («-DNDEBUG») történő újraépítés 20%-os sebességnövekedést eredményezett.
  • A TCMalloc memóriaelosztó rendszerrel végzett újraépítés («-L/usr/lib/x86_64-linux-gnu -ltcmalloc_minimal» hozzáadása az LDFLAGS-hez) 40%-os gyorsulást eredményezett.
  • A malloc funkciók tcmalloc, jemalloc és mimalloc memóriaelosztó rendszerekkel való helyettesítése «LD_PRELOAD=/usr/lib/x86_64-linux-gnu/lib….so» segítségével 27%, 29% és 44%-os teljesítménynövekedést hozott. A mimalloc használatakor, amely 44%-os gyorsulást mutatott, a környezeti változó «MIMALLOC_LARGE_OS_PAGES=1» volt beállítva.
  • A mimalloc használatával végzett újraépítés az LDFLAGS-ben LD_PRELOAD helyett 90%-os gyorsuláshoz vezetett a teszt során. Egy másik teszt a 2,2 GB JSON adat 13000 fájlban való feldolgozására szintén körülbelül kétszeres teljesítménynövekedést mutatott.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster