Gjør ditt Linux-system mer responsivt med Ulatencyd

Gjør ditt Linux-system mer responsivt med Ulatencyd / Linux

For noen år siden, en magisk “200-linjers patch” ble lagt til Linux-kjernen. Den har som mål å øke responsen til programmer som kjører samtidig på ditt Linux-system. Mens det var effektivt, mener utvikler Daniel Poelzleithner at han kan gjøre det bedre.

For å oppnå optimal respons på Linux-systemet, kan du kanskje se på Ulatencyd.

Advarsel: For å prøve ut Ulatencyd må du få hendene dine dypt inn i terminalen, og kompilere programmet fra bunnen av. Med andre ord, dette er ikke det beste valget for nybegynnere. Hvis du vil, kan du børste opp noen terminalkommandoer. En A-Z av Linux - 40 viktige kommandoer Du bør vite en A-Z av Linux - 40 viktige kommandoer Du bør vite Linux er det ofte ignorerte tredje hjulet til Windows og Mac. Ja, det siste tiåret har operativsystemet for åpen kildekode fått mye trekkraft, men det er fortsatt langt fra å bli vurdert ... Les mer på forhånd.

Om Ulatencyd

Ulatencyd er en systemdæmon for Linux som gir kjernen noen hint og begrensninger på hvordan man skal håndtere prosesser. Det gjør dette ved hjelp av noe kalt cgroups, som er i hovedsak forskjellige prioritetsnivåer. Prosesser som har grafiske brukergrensesnitt og trenger å være lydhør - for eksempel skrivebordsmiljøer - får høyere prioritet enn prosesser som ikke trenger så mye oppmerksomhet, og vil ikke forårsake alvorlige problemer hvis de stikker.


Poelzleithner adresserer også hvordan hans tilnærming er bedre enn 200-linjepakken:

Jeg tror at denne minimale tilnærmingen [refererer til 200-linjepatchen] er god for noen omstendigheter, men gir ikke nok fleksibilitet som kreves for et ekte skrivebord med lav latenstid. Perfekt stasjonær planlegging krever mye heuristikk, som ikke hører hjemme i kjernen. For eksempel vil ikke lappen beskytte deg mot dødsbytte, gaffelbomber, ikke kan oppdage hvilken prosess du faktisk bruker og gi flere cpu-aksjer til dem, kan ikke gi realtime-prioriteringer til prosesser som jackd, etc ... ulatencyd er designet for å fikse nøyaktig det.

Installasjon

For å installere Ulatencyd på Ubuntu, kjør følgende kommando:

sudo apt-get install libglib2.0-dev libdbus-glib-1-dev liblua5.1-0-dev lua-posix-dev procps doxygen libmoose-perl pandoc python-dbus python-qt4 python-qt4-dbus xcb xcb-proto libxau-dev libprocps3-dev cmake


Denne kommandoen installerer de nødvendige avhengighetene til programvaren. Pakkenavnene varierer mellom distros, slik at brukere av distros annet enn Ubuntu må se på prosjektets side og se hvilke pakker som må installeres basert på den angitte listen.


Deretter går du til prosjektets hovedside som er vert for GitHub, en ekstremt nyttig kodehåndterende tjeneste. Slik viser og rediger kildekoden til en åpen kildekode. App Slik viser og rediger kildekoden til en åpen kildekode-app mens Å gå åpen kildekode kan være et godt valg, du må også investere i riktig samfunn. GitHub er et av de beste stedene å gjøre dette, ikke bare på grunn av det rene beløpet ... Les mer, og klikk på “Last ned ZIP” knappen på høyre side av siden.


Lagre dette til hvor du måtte ønske (for eksempel mappen Nedlastinger), og trekk deretter ut zip.


Deretter, for alle distros, bruk CD for å gå til den ekstraherte mappen (for eksempel cd ./Downloads/ulatency-master), og kjør denne kommandoen:

cmake. && gjør DEBUG = 1 && gjør docs && sudo make install


Dette vil kompilere koden og dokumentasjonen og deretter installere den.

Endelig kjør denne kommandoen for å starte ulatencyd:

sudo / usr / local / sbin / ulatencyd -v -f / var / log / ulatencyd

Du kan også velge å starte systemet på nytt hvis du vil.

Merknader

Vær oppmerksom på at noen personer har rapportert at installering av Ulatencyd har forårsaket kjernepaneler. Den generelle konsensus synes å være at disse kjernepanikken er resultatet av feil i kjernen i stedet for problemer med Ulatencyd. Men når jeg bruker den nyeste koden til Ulatencyd fra sin Git repo, og det siste daglige bildet av Ubuntu 14.04, har jeg ingen problemer overhodet.

resultater

Jeg finner at Ulatencyd gjør en forskjell, selv om opplevelsen kan være annerledes for deg. Hvis du allerede bruker en rask datamaskin, er potensialet til å se en forskjell lav fordi du allerede har nok ressurser til å gi hver prosess den oppmerksomheten det ønsker. For tregere datamaskiner er potensialet for å se en forskjell større, men det er avhengig av arbeidsbelastningen.

Responsiveness er en ganske subjektiv statistikk, men den nærmeste metriske som kan representere den er gjennomsnittsbelastningen. Google+ bruker Rafal Cieslak prøvde Ulatencyd i kombinasjon med en annen daemon kalt verynice, og så gjennomsnittsbelastningen falt fra 2,2 - 2,8 til 0,8 - 1,5. Jeg har ikke sett så mye av en forbedring ved hjelp av ulatencyd alene, men inaktiv belastninger på ~ 0,5 dråp ned til ~ 0,2, og travle belastninger på ~ 2,4 dråp ned til ~ 1,8-2,0. I alle fall er det en forbedring som er målbar.

For de som bryr seg, hevder utvikler Poelzleithner at programvaren er effektiv:

Jeg kan kjøre en make -j 40 på min dual core-maskin mens du ser en full HD-film uten problemer, og ui fra kde føles fortsatt bra.

Dette er faktisk ganske imponerende for et dual core system, som en “gjør -j 40” kommando betyr at han komponerte et stykke programvare med fire gode tråder på en gang - noe som sikkert holder CPUen fullt utnyttet.

Konklusjon

Husk at dette programmet ikke nødvendigvis gjør datamaskinen raskere (som det kan gjøre mer arbeid på kort tid), men bare gjør det mer responsivt (som i det legger mer oppmerksomhet til tingene du samhandler med og etterlater andre prosesser som tanker). Det betyr imidlertid ikke at Ulatencyd ikke er verdt å prøve - et responsivt system kan være mye mindre forværrende for brukeren.

Hvis du fortsatt er på jakt etter forbedret hastighet og lydhørhet, ikke glem å sjekke ut disse fire tipsene for å få fart på et Linux-system. 4 måter å øke hastigheten på Linux-PCen. 4 måter å øke hastigheten på Linux-PCen. Er Linux-oppsettet ditt ikke så rask som du vil? Slik gjør du det raskere. Les mer .

Har du triks opp i ermene for å forbedre et Linux-systemets ytelse som du kan dele med andre? Gi oss beskjed i kommentarene!