Injineli yeAmazon ichonge ukwehla kwe-Linux kernel 7.0, okulindeleke ukuba ikhutshwe ngo-Epreli 13. Utshintsho kwizicwangciso zeshedyuli yomsebenzi lubangele ukwehla okukhulu kwi-throughput kunye ne-responsiveness xa kusetyenziswa iPostgreSQL kwiinkqubo ze-ARM64. Ukusebenzisa i-kernel 7.0, ukusebenza kuvavanyo lwe-pgbench "simple-update" kwehle phantse kabini, ukusuka kwi-98565 ukuya kwi-50751.
Ukwehla kwesantya kubangelwe kukutshintsha imo yokukhawulela inkqubo yokucwangcisa emiselweyo ukusuka kwi-PREEMPT_NONE ukuya kwi-PREEMPT_LAZY kwii-architectures ezixhasayo. Oku kubangele ukuba i-PostgreSQL ichithe i-55% yexesha layo le-CPU ibiza i-s_lock() kwindawo yomsebenzisi. Ukujongana nale ngxaki, kucetywayo ukuba ibuyisele i-PREEMPT_NONE kwindawo emiselweyo kwaye ikhuphe ikhonkco kwi-ARCH_NO_PREEMPT setting.
UPeter Zijlstra, umbhali wotshintsho olubangele ukuhlehla kunye nomlondolozi weshedyuli yomsebenzi kunye neenkqubo ezingaphantsi kwe-kernel ezinxulumene nokutshixa, uthe kufuneka kulungiswe ikhowudi yePostgreSQL. Ukujongana nokuhla kokusebenza, ucebise ukuba kusetyenziswe ulwandiso olusandula ukongeza "rseq slice" (Restartable Sequences) kwi-kernel yePostgreSQL ukunciphisa amathuba okukhutshwa kwe-lock holder.
Akukacaci ukuba uLinus Torvalds uza kwenza siphi isigqibo, njengoko ebambelela kumgaqo wokuba i-kernel akufuneki yonakalise ukusebenza okanye iphule ukuhambelana kwendawo yomsebenzisi. Kwelinye icala, i-kernel 7.0 ikwisigaba sokugqibela sovavanyo ngaphambi kokuba ikhutshwe, kwaye ukubuyisa umva useto lweshedyuli kunokukhokelela kwezinye ii-regressions. Kwelinye icala, abasebenzisi banokubona ukuncitshiswa kwesiqingatha kokusebenza kwenye yezona database zidumileyo.
umthombo: opennet.ru
