The cpu_load decays on time according past cpu load of rq. New sched_avg decays 
on tasks' load of time. Now we has 2 kind decay for cpu_load. That is a kind of 
redundancy. And increase the system load in sched_tick etc.

This patch removes the cpu_load decay. 

There are 5 load_idx used for cpu_load in sched_domain. busy_idx and idle_idx 
are not zero usually, but newidle_idx, wake_idx and forkexec_idx are all zero 
on every arch. A shortcut to remove cpu_Load decay in the first patch. just one 
line patch for this change. :)

I have tested the patchset on my pandaES board, 2 cores ARM Cortex A9.
hackbench thread/pipe performance increased nearly 8% with this patchset!

        latest kernel 527d1511310a89            + this patchset
hackbench -T -g 10 -f 40
        23.25"                                  21.7"
        23.16"                                  19.99"
        24.24"                                  21.53"
hackbench -p -g 10 -f 40
        26.52"                                  22.48"
        23.89"                                  24.00"
        25.65"                                  23.06"
hackbench -P -g 10 -f 40
        20.14"                                  19.37"
        19.96"                                  19.76"
        21.76"                                  21.54"

Daniel tested this patchset on his Core2 2 socket server, the hackbench has no 
clear regression/improvement.
This patchset is also in Fengguang's x86 testing for more than 1 week, and no 
regression report until now. 
Fengguang, could I assume there is no regression on Intel platforms? :)

The git tree for this patchset at:
 g...@github.com:alexshi/power-scheduling.git no-load-idx 

--
Thanks
        Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to