Linux a fost întotdeauna campion în ceea ce privește viteza, poate de aceea alimentează 90% din supercomputerele lumii. Viteza este văzută mai ales pe servere, mai degrabă decât pe desktop-uri, dar a apărut un nou patch care aduce o creștere imensă a vitezei pe desktop-uri.
Plasturele de către dezvoltatorul kernel-ului Linux Mike Galbraith, care adaugă doar 233 de linii de cod planificatorului kernelului, reduce latența desktopului cu un factor de zece!
Patch-ul a fost lăudat chiar de Linus. El a scris
De asemenea, sunt foarte mulțumit de ceea ce face performanța interactivă. Ce-i drept, „testcase-ul” meu este cu adevărat banal (citind e-mailurile într-un browser web, derulând puțin, în timp ce faceți un „make -j64” pe kernel în același timp), dar este un test-caz care este foarte relevant pentru pe mine. Și este o îmbunătățire mare.
Este o îmbunătățire pentru lucruri precum derularea netedă, dar ceea ce mi s-a părut mai interesant a fost modul în care se pare că într-adevăr se încarcă paginile web mult mai repede. Poate că nu ar fi trebuit să fie surprinzător, dar am asociat întotdeauna acest lucru cu performanța rețelei. Dar, în mod clar, există o încărcare suficientă a procesorului atunci când încărcați o nouă pagină web, dacă, dacă aveți o medie de încărcare de 50+ în același timp la momentul respectiv, veți fi înfometați de procesor în procesul de încărcare și probabil că nu veți primi rapid toate solicitările http suficient.
Deci, cred că acesta este ferm unul dintre acele patch-uri de „îmbunătățire reală”. Loc de muncă bun. Programarea de grup merge de la „utilă pentru anumite încărcări specifice de server” la „aceasta este o caracteristică ucigașă”.
Explicați cum funcționează patch-ul său, a scris Mike
Structura de semnal a fiecărei sarcini conține un pointer moștenit la o structură de grup automat recontată care conține un pointer de grup de sarcini, implicit pentru toate sarcinile care indică init_task_group. Când o sarcină apelează __proc_set_tty (), se renunță la referința la nivel de proces la grupul implicit, se creează un nou grup de activități, iar procesul este mutat în noul grup de activități. După aceea, copiii moștenesc acest grup de sarcini și îi cresc numărul de persoane. La ieșire, o referință la grupul de sarcini curent este abandonată atunci când ultima referință la fiecare structură de semnal este abandonată. Grupul de sarcini este distrus atunci când ultima structură de semnal care îl face referire este eliberată. La momentul selectării cozii de rulare, dacă o sarcină nu are atribuire de grup, se folosește autogrupul curent.
Pur și simplu, acest patch funcționează permițând sistemului să creeze automat grupuri de sarcini per TTY din câte am înțeles.
Nicio problemă, Phoronix are două videoclipuri afișate pe desktop care rulează cea mai recentă instantaneu Kit Git, glxgears, un browser web, un videoclip HD și compilarea unui kernel cu 64 de joburi Aici.
Este o diferență de zi și noapte!
prin intermediul Computerworld
Totul Ubuntu, zilnic. Din 2009.