Annuncio pubblicitario
Alcuni anni fa, una magica "patch a 200 linee" è stata aggiunta al kernel di Linux. Mirava ad aumentare la reattività dei programmi in esecuzione contemporaneamente sul tuo sistema Linux. Sebbene sia stato efficace, lo sviluppatore Daniel Poelzleithner pensa di poter fare di meglio.
Per ottenere la massima reattività sul tuo sistema Linux, potresti voler dare un'occhiata a Ulatencyd.
Avvertimento: Per provare Ulatencyd, dovrai mettere le mani in profondità nel terminale, compilando il programma da zero. In altre parole, questa non è la scelta migliore per i principianti. Se vuoi, puoi rispolverare alcuni comandi del terminale Una A-Z di Linux - 40 comandi essenziali che dovresti sapereLinux è la terza ruota spesso ignorata per Windows e Mac. Sì, negli ultimi dieci anni, il sistema operativo open source ha guadagnato molta trazione, ma è ancora molto lontano dall'essere considerato ... Leggi di più in anticipo.
Ulatencyd è un demone di sistema per Linux che fornisce al kernel alcuni suggerimenti e limitazioni su come gestire i processi. Lo fa usando qualcosa chiamato cgroups, che sono essenzialmente diversi livelli di priorità. I processi che hanno interfacce utente grafiche e devono essere reattivi - come gli ambienti desktop - riceveranno un priorità più alta rispetto ai processi che non richiedono molta attenzione e che non causeranno seri problemi balbettare.
Poelzleithner affronta anche il modo in cui il suo approccio è migliore della patch a 200 righe:
Penso che questo approccio minimale [riferendosi alla patch a 200 linee] sia buono per alcune circostanze, ma non fornisca abbastanza flessibilità necessaria per un vero desktop a bassa latenza. Una pianificazione desktop perfetta richiede molta euristica, che non appartiene al kernel. Ad esempio, la patch non ti proteggerà dallo swap della morte, dalle bombe a forcella, non è in grado di rilevare quale processo stai effettivamente utilizzando e dare più condivisioni di CPU a loro, non possono dare priorità in tempo reale a processi come jackd, ecc... ulatencyd è progettato per risolvere esattamente questo.
Installazione
Per installare Ulatencyd su Ubuntu, eseguire il comando seguente:
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
Questo comando installerà le dipendenze necessarie del software. I nomi dei pacchetti differiscono tra le distribuzioni, quindi gli utenti di distribuzioni diverse da Ubuntu dovranno guardare la pagina del progetto e vedere quali pacchetti devono essere installati in base all'elenco fornito.
Quindi, vai al pagina principale del progetto che è ospitato su GitHub, un estremamente utile servizio di gestione del codice Come visualizzare e modificare il codice sorgente di un'app open sourceMentre andare all'open source potrebbe essere una buona scelta, dovrai anche investire nella comunità giusta. GitHub è uno dei posti migliori per farlo, non solo per la mera quantità ... Leggi di più e fai clic sul pulsante "Scarica ZIP" sul lato destro della pagina.
Salvalo dove preferisci (come la cartella Download), quindi estrai lo zip.
Quindi, per tutte le distro, usa cd per andare alla cartella estratta (come cd ./Downloads/ulatency-master
) ed esegui questo comando:
CMake. && make DEBUG = 1 && make docs && sudo make install
Questo compila il codice e la documentazione e quindi lo installa.
Infine, esegui questo comando per avviare ulatencyd:
sudo / usr / local / sbin / ulatencyd -v -f / var / log / ulatencyd
Puoi anche scegliere di riavviare il sistema se lo desideri.
Appunti
Si noti che alcune persone hanno riferito che l'installazione di Ulatencyd ha causato il panico del kernel. Il consenso generale sembra essere che quei panici del kernel siano il risultato di bug nel kernel piuttosto che problemi con Ulatencyd. Tuttavia, quando utilizzo l'ultimo codice di Ulatencyd dal suo repository Git e l'ultima immagine giornaliera di Ubuntu 14.04, non ho alcun problema.
risultati
Trovo che Ulatencyd faccia la differenza, anche se l'esperienza potrebbe essere diversa per te. Se stai già utilizzando un computer veloce, il potenziale di vedere una differenza è basso perché hai già abbastanza risorse per dare a ogni processo l'attenzione che desidera. Per i computer più lenti, il potenziale di vedere una differenza è maggiore, ma dipende dal carico di lavoro.
La reattività è una statistica abbastanza soggettiva, ma la metrica più vicina che può rappresentarla è il carico medio. L'utente di Google+ Rafal Cieslak ha provato Ulatencyd in combinazione con un altro demone chiamato verynice e ha visto il carico medio scendere da 2,2 - 2,8 a 0,8 - 1,5. Non l'ho ancora visto gran parte del miglioramento usando ulatencyd da solo, ma i carichi inattivi di ~ 0,5 scendono a ~ 0,2 e i carichi occupati di ~ 2,4 scendono a ~ 1,8-2,0. In ogni caso, è un miglioramento misurabile.
Per coloro a cui importa, lo sviluppatore Poelzleithner afferma che il software è efficace:
Sono in grado di eseguire un make -j 40 sulla mia macchina dual core mentre guardo un film in full hd senza problemi e l'interfaccia utente di kde si sente ancora bene.
Questo è in realtà piuttosto impressionante per un sistema dual core, poiché un comando "make -j 40" significa che lo era compilare un software con quaranta thread in esecuzione contemporaneamente, qualcosa che sicuramente manterrà la CPU completamente utilizzato.
Conclusione
Ricorda che questo programma non rende necessariamente il tuo computer più veloce (poiché può fare più lavoro in meno tempo), ma solo renderlo più reattivo (come in esso presta maggiore attenzione alle cose con cui interagisci e lascia altri processi come ripensamenti). Tuttavia, ciò non significa che Ulatencyd non valga la pena provare: un sistema reattivo può essere molto meno aggravante per l'utente.
Se sei ancora a caccia di velocità e reattività migliorate, non dimenticare di dare un'occhiata a questi quattro consigli per velocizzare un sistema Linux 4 modi per velocizzare il tuo PC LinuxLa tua configurazione di Linux non è veloce come vorresti? Ecco come accelerarlo. Leggi di più .
Hai qualche asso nella manica per migliorare le prestazioni di un sistema Linux che puoi condividere con gli altri? Fateci sapere nei commenti!
Danny è senior presso la University of North Texas e gode di tutti gli aspetti del software open source e di Linux.