[Guida] Sysadmin GNU/Linux : cos’è l’I/O scheduler

Questa mini guida può essere considerata come un continuo dell’articolo sull’input output monitoring. L’amministratore di sistema, infatti, dopo aver monitorato le attività di I/O, deve ottimizzare il sistema. A questo scopo vi parlerò dell’I/O scheduler.

I/O Scheduler: un mondo di algoritmi

Lo scheduling delle attività di input output è il metodo di decisione dell’ordine con cui inviare ai volumi le request di I/O. Questo genere di decisioni, ovviamente, è preso tramite un complesso algoritmo. Semplificando, va scelto lo scheduler che più si adatta ai nostri bisogni, dato una sistema di vincoli spesso in conflitto tra loro. A titolo esemplificativo, uno scheduler deve:

  • Tener conto della posizione fisica sul disco della testina;
  • Organizzare le request per gruppi contigui;
  • Dare priorità alle operazioni di lettura;
  • Garantire equità tra tutte le request;
  • Minimizzare il seek time.

io scheduler scelte

La scelta dello scheduler, quindi, dipende dall’hardware e dai compiti specifici cui è dedicata la macchina. Un server utilizzato come database ed un computer desktop, ad esempio, hanno differenti esigenze. Se si vuole scoprire quale algoritmo è in uso, nell’esempio per un SSD denominato sda, basta utilizzare questa direttiva:

cat /sys/block/sda/queue/scheduler

Quali sono i margini di manovra per un sysadmin

Come si può notare dall’immagine che vi ho riportato, questa macchina utilizza, per sda, lo scheduler bfq. Una descrizione di questo particolare algoritmo, la potete trovare qui. Per modificare l’algoritmo utilizzato su questo specifico dispositivo, ad esempio con mq-deadline, l’istruzione da utilizzare è:

echo "mq-deadline" | sudo tee /sys/block/sda/queue/scheduler

bfq parametri

I parametri configurabili dal sysadmin, possono essere trovati nella cartella /sys/block/sda/queue/iosched. Ad esempio fifo_expire_sync indica il valore, in millisecondi, del timeout relativo alle request di tipo sincrono. Fifo_expire_async, parallelamente, quelle di tipo asincrono.

Se volete approfondire l’argomento, un buon punto di partenza potrebbe essere questa pagina della wiki di Ubuntu.

sharing-caring-1

Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.

Fonte: https://www.lffl.org/2020/08/sysadmin-io-scheduler-choice.html

Visited 25 times, 1 visit(s) today
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.