On Wed, Sep 21, 2011 at 5:15 PM, rohan puri <[email protected]> wrote:
> > > On Wed, Sep 21, 2011 at 4:46 PM, Murali N <[email protected]>wrote: > >> Hi, >> Can somebody give pointers to the load balancing scheduler on Linux. I >> hope this is the default scheduler which is used on most of the linux >> systems on SMP environment. >> I would like to know how the scheduler takes a decision to migrate >> some of the processes to the another core? >> >> I have a scenario like below: >> >> If CORE0 is running per say 2 threads which can be handled by CORE0 >> itself ( by running at higher frequencies ) without enabling the CORE1 >> ( put into some low power mode ). >> How the scheduler takes this kind of decision intelligently!!! >> >> -- >> Regards, >> Murali N >> >> _______________________________________________ >> Kernelnewbies mailing list >> [email protected] >> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >> > Hi, > > You can refer the link > http://www.ibm.com/developerworks/linux/library/l-scheduler/ > > Also, there is a notion of processor affinity, in linux one can set the > processe's affinity with the taskset command. > > Either user can set this affinity thing or the scheduler attempts to keep > processes on the same CPU as long as practical for performance reasons. > > Regards, > Rohan Puri > For normal SMP case, load balancing is enabled by default. There is one global variable in linux kernel scheduler code named "sched_mc_power_savings". If is accessible through /sys/devices/system/cpu. If this is set to one, it changes the scheduler load balancing code to gather processes to run on small no of CPUs, if the load is less then there maybe some CPUs idle which would then be put in deep sleep which results in low power consumption. Regards, Rohan Puri
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
