Ġiet skoperta rigressjoni fil-kernel tal-Linux 7.0 li tnaqqas il-prestazzjoni tal-PostgreSQL bin-nofs.

Inġinier tal-Amazon identifika rigressjoni speċifika għall-kernel tal-Linux 7.0, li mistennija tiġi rilaxxata fit-13 ta' April. Bidla fis-settings tal-iskedatur tal-kompiti rriżultat fi tnaqqis sinifikanti fir-rendiment u r-rispons meta jitħaddem PostgreSQL fuq sistemi ARM64. Bl-użu tal-kernel 7.0, il-prestazzjoni fit-test "simple-update" tal-pgbench kważi rdoppjat, minn 98565 għal 50751.

It-tnaqqis fil-veloċità kien ikkawżat mill-bidla fil-modalità ta' preemption tal-iskedatur awtomatiku minn PREEMPT_NONE għal PREEMPT_LAZY fuq arkitetturi li jappoġġjawha. Dan wassal biex PostgreSQL iqatta' 55% tal-ħin tas-CPU tiegħu jsejjaħ s_lock() fl-ispazju tal-utent. Biex tiġi indirizzata din il-kwistjoni, huwa propost li PREEMPT_NONE jerġa' lura għall-modalità awtomatika u li jitneħħa mill-issettjar ARCH_NO_PREEMPT.

Peter Zijlstra, l-awtur tal-bidliet li kkawżaw ir-rigressjoni u l-manutentur tat-task scheduler u s-sottosistemi tal-kernel relatati mal-lock, stqarr li jeħtieġ li tiġi implimentata soluzzjoni fil-kodiċi PostgreSQL. Biex tiġi indirizzata d-degradazzjoni tal-prestazzjoni, huwa rrakkomanda li tintuża l-estensjoni "rseq slice" (Restartable Sequences) miżjuda reċentement fil-kernel PostgreSQL biex tillimita l-probabbiltà li d-detentur tal-lock jitneħħa.

Għadu mhux ċar x'deċiżjoni se jieħu Linus Torvalds, peress li jaderixxi mal-prinċipju li l-kernel m'għandux jiddegrada l-prestazzjoni jew ikisser il-kompatibilità tal-ispazju tal-utent. Minn naħa waħda, il-kernel 7.0 jinsab fil-fażi finali tal-ittestjar qabel ir-rilaxx, u t-treġġigħ lura tas-settings tal-iskedatur jista' jwassal għal rigressjonijiet oħra. Min-naħa l-oħra, l-utenti jistgħu jesperjenzaw tnaqqis bin-nofs fil-prestazzjoni ta' waħda mill-aktar databases popolari.

Sors: opennet.ru

Żid kumment