Difference between revisions of "OS: Tuning Completely Fair scheduler CFS"

From OnnoWiki
Jump to navigation Jump to search
Line 4: Line 4:
 
Dalam Linux Completely Fair scheduler (CFS) terdapat parameter yang dapat kita atur untuk menyesuaikan dengan kebutuhan kita.
 
Dalam Linux Completely Fair scheduler (CFS) terdapat parameter yang dapat kita atur untuk menyesuaikan dengan kebutuhan kita.
  
The following parameters can be accessed through the proc file system. The default values (in nanoseconds) of these parameters from SLES 11 SP1 are shown in parentheses.
+
Parameter berikut dapat di akses melalui file sistem proc. Nilai default (dalam nanoseconds Contoh paramete adalah sebagai berikut:
  
    sched_min_granularity_ns (16000000): Minimum preemption granularity for processor-bound tasks. Tasks are guaranteed to run for this minimum time before they are preempted.
+
* sched_min_granularity_ns (16000000): Minimum preemption granularity for processor-bound tasks. Tasks are guaranteed to run for this minimum time before they are preempted.
    sched_latency_ns (80000000): Period over which CFQ tries to fairly schedule the tasks on the runqueue. All of the tasks on the runqueue are guaranteed to be scheduled once within this period.
+
* sched_latency_ns (80000000): Period over which CFQ tries to fairly schedule the tasks on the runqueue. All of the tasks on the runqueue are guaranteed to be scheduled once within this period.
    sched_wakeup_granularity_ns (20000000): Ability of tasks being woken to preempt the current task. The smaller the value, the easier it is for the task to force the preemption.
+
* sched_wakeup_granularity_ns (20000000): Ability of tasks being woken to preempt the current task. The smaller the value, the easier it is for the task to force the preemption.
  
To verify the value of each parameter, use the following command:
+
Untuk memverifikasi nilai dari masing-masing parameter, gunakan perintah berikut:
  
 
  # cat /proc/sys/kernel/sched_latency_ns
 
  # cat /proc/sys/kernel/sched_latency_ns
  
To modify the value of each parameter, use the following command:
+
Untuk memodifikasi nilai dari masing-masing parameter, gunakan perintah berikut (misalnya)
  
 
  # echo 20000 > /proc/sys/kernel/sched_latency_ns
 
  # echo 20000 > /proc/sys/kernel/sched_latency_ns

Revision as of 11:16, 1 April 2013

Sumber: http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/index.jsp?topic=%2Fliaai%2Fsaptuning%2Fsaptuningadjust.htm


Dalam Linux Completely Fair scheduler (CFS) terdapat parameter yang dapat kita atur untuk menyesuaikan dengan kebutuhan kita.

Parameter berikut dapat di akses melalui file sistem proc. Nilai default (dalam nanoseconds Contoh paramete adalah sebagai berikut:

  • sched_min_granularity_ns (16000000): Minimum preemption granularity for processor-bound tasks. Tasks are guaranteed to run for this minimum time before they are preempted.
  • sched_latency_ns (80000000): Period over which CFQ tries to fairly schedule the tasks on the runqueue. All of the tasks on the runqueue are guaranteed to be scheduled once within this period.
  • sched_wakeup_granularity_ns (20000000): Ability of tasks being woken to preempt the current task. The smaller the value, the easier it is for the task to force the preemption.

Untuk memverifikasi nilai dari masing-masing parameter, gunakan perintah berikut:

# cat /proc/sys/kernel/sched_latency_ns

Untuk memodifikasi nilai dari masing-masing parameter, gunakan perintah berikut (misalnya)

# echo 20000 > /proc/sys/kernel/sched_latency_ns

In the test environment, best results were achieved with the following values for these three parameters:

kernel.sched_min_granularity_ns = 100000
kernel.sched_wakeup_granularity_ns = 25000
kernel.sched_latency_ns = 1000000

If you want to make these changes permanent, you can modify these parameters in the /etc/sysctl.conf file and run the sysctl -p command.


Referensi

Pranala Menarik