NjĂ« inxhinier nga kompania Amazon zbuloi njĂ« regresion specifik pĂ«r bĂ«rthamĂ«n Linux 7.0, e cila pritet tĂ« lĂ«shohet mĂ« 13 prill. Ndryshimi i cilĂ«simeve tĂ« planifikuesit tĂ« detyrave solli njĂ« rĂ«nie tĂ« konsiderueshme nĂ« kapacitetin e kalimit dhe reagueshmĂ«rinĂ« gjatĂ« funksionimit tĂ« bazĂ«s sĂ« tĂ« dhĂ«nave PostgreSQL nĂ« sisteme me arkitekturĂ« ARM64. GjatĂ« pĂ«rdorimit tĂ« bĂ«rthamĂ«s 7.0, treguesit e performancĂ«s gjatĂ« testit pgbench "simple-update" u ulĂ«n gati nĂ« gjysmĂ« â nga 98565 nĂ« 50751.
Ngadalësimi është shkaktuar nga ndryshimi i modalitetit të ndërlikimeve (preemption) në planifikuesin e të dhënave të paracaktuara nga PREEMPT_NONE në PREEMPT_LAZY në arkitektura që mbështesin këtë modalitet, duke bërë që hapësira e përdoruesit PostgreSQL të kalojë 55% të kohës së CPU në thirrjen s_lock(). Për të zgjidhur problemin, është propozuar kthimi në modalitetin PREEMPT_NONE si parazgjedhje dhe heqja e lidhjes së tij me cilësimin ARCH_NO_PREEMPT.
Peter Zijlstra, autori i ndryshimeve që shkaktuan regresionin, dhe mirëmbajtësi i planifikuesit të detyrave dhe nëngjyrave të lidhura të bërthamës, deklaroi se ndreqja duhet të bëhet në kodin PostgreSQL. Për të eliminuar rënien e performancës, ai rekomandoi përdorimin e një zgjatjeje të sapo shtuar në bërthamë "rseq slice" (Rregullat e Rinevoshme) për të kufizuar probabilitetin e shpërndarjes së mbajtësit të bllokimit.
Ende nuk është e qartë se cilin zgjidhje do të marrë Linus Torvalds, i cili mban rregullin se bërthama nuk duhet të përkeqësojë performancën dhe të prishë përputhshmërinë me hapësirën e përdoruesit. Nga njëra anë, bërthama 7.0 ndodhet në fazën përfundimtare të testimit para lëshimit dhe rikthimi i cilësimeve të planifikuesit mund të sjellë regresione të tjera, ndërsa nga ana tjetër, përdoruesit mund të përballen me një rënie të dyfishtë të performancës së një nga DBMS më të njohura.
Burimi: opennet.ru
