Linus Torvalds avfÀrdade problemen med schemalÀggaren som uppkom i prestandatestet.

Spelutvecklare Malte Skarupke publicerade jÀmförelse av prestandan för lÄs i Mutex och Spinlock anvÀndning av olika schemalÀggare. Tester visade onormalt stora fördröjningar med Spinlock och den schemalÀggare som anvÀnds som standard i Linux. Författaren av testerna drog slutsatsen att Linux-schemalÀggaren har problem som negativt pÄverkar spel skapade för Google Stadia-tjÀnsten, dÀr spel körs pÄ GPU i en molnmiljö, och kunden bara fÄr en ström av innehÄllet pÄ skÀrmen med en uppdateringsfrekvens pÄ upp till 60 bilder per sekund. Under sÄdana förhÄllanden Àr det nödvÀndigt att sÀkerstÀlla att bilderna visas i tid, och fördröjningar som överskrider en millisekund blir mÀrkbara.

Till diskussion av testerna drog igÄng Linus Torvalds, som kallade dem skrÀp ('pure garbage') och ett exempel pÄ hur man kan, utan att helt förstÄ Àmnet, fÄ resultat som inte speglar verkligheten. Spinlock Àr en lÄg-nivÄ primitiv som mÄste anvÀndas med stor försiktighet i anvÀndarutrymmet och med full förstÄelse för detaljer, annars kan man fÄ det som demonstrerades av testförfattaren. Linus rÄdde spelutvecklare att inte anvÀnda spinlock och inte försöka bygga egna lÄssystem pÄ dess grund, utan att anvÀnda befintliga vÀlbeprövade mekanismer som informerar systemet om att vÀnta pÄ att lÄset ska frigöras för att undvika pÄverkan frÄn schemalÀggaren.

Typer av spinlock kan endast anvÀndas nÀr det finns fullstÀndig sÀkerhet om att schemalÀggaren inte kommer att avbryta deras exekvering. De lÄs som anvÀnds i testerna baserat pÄ spinlock implementerades via en egen skrÀddarsydd wrapper som körs i anvÀndarutrymmet. SchemalÀggaren kan nÀr som helst ta över kontrollen under exekveringen av denna wrapper och vÀxla till att utföra en annan uppgift. Eftersom prestandamÀtningen utförs baserat pÄ absoluta vÀrden av timern, omfattar vissa fördröjningar i testerna inte bara fördröjningar i lÄshanteraren, utan Àven kod som kördes i en annan kontext, dvs. de mÀter inte bara det som testförfattaren försökte mÀta, utan ocksÄ 'bruset' frÄn andra berÀkningar i systemet.

Testförfattare försökte att bemöta Linus genom att pÄpeka att anvÀndningen av egna blockeringssystem baserade pÄ spinlock ofta tillÀmpas i praktiken inom spel, eftersom tester visar högre prestanda med enklare schemalÀggare Àn vad som anvÀnds i Linux. invÀnde, att Linux-schemalÀggaren Àr mÄngsidig, har slipats under Ärtionden och optimerats inte bara för skrivbord och spel, utan Àven för andra typer av belastningar, sÄsom serversystem, vilket innebÀr att den tar hÀnsyn till mÄnga nyanser vid schemalÀggning av uppgifter.

Att lÀgga till specifika optimeringar som minskar latensen i Google Stadia-spel kan öka responsen i det specifika fallet, men kommer antagligen att leda till en minskning av schemalÀggarens effektivitet som helhet. Till exempel fungerar Windows-schemalÀggaren bÀttre i de aktuella testen, eftersom den Àr betydligt enklare Àn Linux-schemalÀggaren och huvudsakligen Àr optimerad för skrivbordsrelaterade uppgifter.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster