Pagina 1 di 1

I/O scheduler

Inviato: gio 14 ago 2008, 14:05
da beato_angelico256
quale usate ? io attualmente uso l'anticipatory ma noto che nel caso di trasferimenti dati il sistema è poco rensponsivo ... sto pensando di passare a CFQ ... che consigliate ?

Re: I/O scheduler

Inviato: gio 14 ago 2008, 15:17
da phobos3576
Un tempo usavo "Anticipatory" che è lo scheduler di default; seguendo i consigli dell'help di xconfig sono passato a Deadline che è molto più leggero ed ha le stesse prestazioni di Anticipatory.

Codice: Seleziona tutto

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=m
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=m
# CONFIG_DEFAULT_AS is not set
CONFIG_DEFAULT_DEADLINE=y
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="deadline"
CONFIG_CLASSIC_RCU=y
In più, come "preemption model", per i moderni PC è consigliabile impostare:

Codice: Seleziona tutto

CONFIG_PREEMPT=y
Sinceramente non ho notato differenze rilevanti; in entrambi i casi il sistema risulta estremamente responsivo e in tutti questi anni non mi è mai capitato neanche il minimo rallentamento.

Una differenza enorme invece l'ho notata tra vecchi e nuovi PC in relazione all'opzione "Timer Frequency"; sui moderni PC la scelta ottimale è 1000 Hz, mentre su quelli vecchi (con CPU intorno ai 700 MHz) si ottiene un notevole aumento di prestazioni scendendo a 250 Hz!

A titolo di curiosità, nel README di Enemy Territory - Quake Wars per Linux si consiglia di impostare:

Codice: Seleziona tutto

Processor type and features --> Timer frequency --> 1000 Hz
Processor type and features --> Preemption model --> Preemptible kernel (Low Latency Desktop)

Re: I/O scheduler

Inviato: gio 14 ago 2008, 15:34
da FireEater
In generale per l'ambiente desktop l'ideale è il CFQ.

Puoi testare i vari scheduler con(ad es.) :

Codice: Seleziona tutto

echo anticipatory > /sys/block/Xda/queue/scheduler
Nel caso se non vuoi ricompilare impostati

Codice: Seleziona tutto

echo tuoscheduler > /sys/block/Xda/queue/scheduler
in un file di avvio.

Ciao
Fire_Eater