
A carichi differenti risposte diverse

Il kernel Linux è sempre più ricco
di opzioni che sono però
spesso sottovalutate o nella maggior
parte dei casi ignorate, visto che quasi
sempre si finisce con l'usare l'immagine
messa a disposizione dalla propria
distro. Le immagini standard sono per
loro natura generiche, anche perché
le prestazioni dell'hardware sempre
crescenti non richiedono, nella maggior
parte dei casi, di ricorrere ad ottimizzazioni.
Ma il vero esperto Linux dovrebbe
sempre compilarsi da se il kernel
e attivare tutte le opzioni che possono
consentire al sistema di aumentare
le prestazioni e di sfruttare al massimo
l'hardware. Ad esempio, una importante
opzione, che influisce parecchio
sulle prestazioni velocistiche, è
quella relativa alla “Preemption”, che
letteralmente significa “anticipo”, ma
che in realtà rappresenta la capacità
del kernel di interrompere alcuni suoi
rami per poter eseguire task che richiedono
una priorità più alta. In pratica, si
sacrificano alcune parti del codice in
favore di altre che richiedono una maggior
prontezza (come ad esempio il sotto-
sistema video). Questa opzione si
trova sotto il menù - del modulo di configurazione
del kernel - “Processor
type and features” nella sezione “Preemption
Model”. Il valore può essere
impostato su “No Forced Preemption”
che è ideale per un server e offre
il miglior compromesso in termini di risposta
ai servizi, bilanciando al massimo
l'uso delle risorse oppure, per chi
cerca massima velocità di risposta, sugli
altri due livelli, “Voluntary Kernel
Preemption” e “Preemptible Kernel”.
Il primo rappresenta un compromesso
tra prestazioni e bilanciamento mentre
il secondo è indicato per i sistemi che vogliono
latenze (ovvero ritardi di risposta)
contenute al massimo. Infatti proprio
quando si attiva questa opzione si
rende anche disponibile un'ulteriore caratteristica
chiamata “Preempt The Big
Kernel Lock” con cui rendere il kernel
ulteriormente più pronto a servire i processi
ad alta priorità. Non rimane che provare
a compilare il kernel ed eseguirlo,
per verificare con i propri occhi l'incremento
di prestazioni.