Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Mathieu Desnoyers <mathieu.desnoyers <at> efficios.com>
Subject: [RFC patch 0/2] sched: dynamically adapt granularity with nr_running
Newsgroups: gmane.linux.kernel
Date: Saturday 11th September 2010 17:37:32 UTC (over 6 years ago)
Changing the minimum granularity is a double-edged sword: if we set it to a
too
small value, then the scheduler will preempt tasks too often. If it is too
large, then the "latency" period can grow very large as the number of
running
tasks increases.

The first patch leaves the same scheduling granularity when there are few
tasks
on the system (3 or less), but dynamically adapts (shrinks) the sched
granularity when there are more. At a ceiling value of 8 running tasks
(this
choice is arbitrary), it grows the latency rather than shrinking
granularity
further to ensure we don't end up calling the scheduler too often.

The second patch ensures that awakened sleeping tasks don't get affected by
shrinked minimum granularity.

Comments are welcome,

Thanks,

Mathieu

-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
 
CD: 3ms