LinuxQuestions.org
Review your favorite Linux distribution.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Kernel
User Name
Password
Linux - Kernel This forum is for all discussion relating to the Linux kernel.

Notices

Reply
 
Search this Thread
Old 08-21-2006, 09:32 AM   #1
panandsapphire
LQ Newbie
 
Registered: Aug 2006
Posts: 4

Rep: Reputation: 0
Question linux 2.6 scheduler


i know that linux 2.6 kernel contains 4 types of I/O schedulers but does the kernel contain any other schedular that supports CPU-bound processes. And if there is, where can i find it's details.....
 
Old 08-26-2006, 09:01 PM   #2
stress_junkie
Senior Member
 
Registered: Dec 2005
Location: Massachusetts, USA
Distribution: Ubuntu 10.04 and CentOS 5.5
Posts: 3,873

Rep: Reputation: 331Reputation: 331Reputation: 331Reputation: 331
Coincidentally I've been reading the book "Performance Tuning for Linux Servers" published by the IBM Press (ISBN 0-13-144753-X). It's not the first Linux/Unix performance tuning book that I've read. The sad news, it seems to me, is that Unix and Linux aren't all that tunable. At least they're not very tunable compared to DEC/Compaq/HP VMS which I administered for twenty years. Having said that I will share some what I have learned from the book.

First there are two I/O schedulers, anticipatory and deadline. The difference in performance relates to I/O, not to CPU sharing. Therefore they have nothing to do with managing CPU bound processes.

The function of equitably sharing CPU time is controlled by several tunable parameters. In my SuSE 9.2 system these parameters are defined in /etc/sysconfig/kernel. According to the book these are the important parameters to adjust. Mind you, my explanations are just a small paraphrase of what this book says. You really would need to read this or an equivalent book for a better understanding of these parameters and how they work together to tune the job scheduler.

Exerpts from Chapter 8: Scheduler Tuning:

CHILD_PENALTY:
Increasing this increases the child process' effective priority.

CREDIT_LIMIT:
Note that the book contradicts itself for this paremeter saying that reducing this value increases interactive process priority while decreasing this value has the opposite effect.

EXIT_WEIGHT:
Setting this value to zero causes the parent process to inherit the child process' sleep average when the child process exits.

INTERACTIVE_DELTA:
Increasing this value causes the scheduler to require that a process accumulate a greater sleep average to be considered interactive.

MAX_SLEEP_AVG:
Increasing this causes the scheduler to require that a process accumulate a greater sleep average to be granted a priority bonus.

MAX_TIMESLICE:
Imcreasing this value results in the highest priority task getting more time before it is rescheduled.

MIN_TIMESLICE:
Increasing this value results in the lowest priority task getting more time before it is rescheduled.

PARENT_PENALTY:
Decreasing this value results in penalizing the parent process for creating more children by reducing the effective priority of the parent.

PRIO_BONUS_RATIO:
Increasing this value gives interactive tasks more bonuses and CPU hogs more penalties.

STARVATION_LIMIT:
Increasing this value helps keep interactive tasks in the active job array at the expense of starving noninteractive tasks.

I hope this helps. At least you know specifically what to look up for a more comprehensive explanation of scheduler tuning.

BTW, although this next comment is about interactive performance I'll add it here anyway. I have had good a good result from changing the MAX_TIMESLICE parameter from its default of 40,000 to 10,000 and changing the MIN_TIMESLICE from its default of 1,000 to 500. The names of these parameters are actually SCHED_MAXTIMESLICE and SCHED_MINTIMESLICE in the SuSE /etc/sysconfig/kernel file. Making these changes appears to have improved the performance of KDE. I'm using the 2.6.8-24.24-default kernel on this machine.

Last edited by stress_junkie; 08-26-2006 at 09:16 PM.
 
  


Reply

Tags
performance, tuning


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Modification Linux 2.6 Scheduler aerofloat Programming 1 07-26-2006 11:51 PM
Linux Scheduler - Redhat 2.4.18 KidVI Linux - Software 2 05-03-2005 03:34 AM
chaning linux scheduler() dumb82 Linux - General 0 07-22-2004 11:50 PM
something on Linux like Scheduler Tasks on NT ashley75 Linux - General 4 09-26-2003 11:14 AM


All times are GMT -5. The time now is 07:31 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration