On Mon, 2007-05-07 at 18:33 +0200, Ingo Molnar wrote: > - complete and finetune the 'smooth load calculation' mechanism > (Mike Galbraith)
Houston, we have alien artifacts. Artifact 1: [EMAIL PROTECTED]: taskset -c 1 ./thud 5 starting 5 children running... [EMAIL PROTECTED]: taskset -c 1 ./chew pid 7551, prio 0, interval of 99984800 nsec pid 7551, prio 0, out for 7 ms, ran for 1690 ms, load 99% pid 7551, prio 0, out for 2 ms, ran for 1794 ms, load 99% pid 7551, prio 0, out for 4 ms, ran for 9665 ms, load 99% pid 7551, prio 0, out for 775 ms, ran for 379 ms, load 32% <== hurt pain ouch! pid 7551, prio 0, out for 32 ms, ran for 6 ms, load 17% pid 7551, prio 0, out for 32 ms, ran for 4 ms, load 13% pid 7551, prio 0, out for 32 ms, ran for 4 ms, load 13% pid 7551, prio 0, out for 32 ms, ran for 4 ms, load 13% When thud starts, chew takes a size 14EEE latency hit if bits 1, 2 and 3 are set in sysctl_sched_load_smoothing. Good for burst load, rotten for interactivity if that burst load ain't X. Start a thud 5 without the taskset, and you'll feel the lurch. Artifact 2: If both bits 1 and 2 are set, and bit 3 is _not_ set, chew's out drops to ~6ms and run drops to < 1ms. Excessive context switching. Computing delta_fair with smoothed load in update_curr() fixes some things, but still breaks others. The cost/benefit ratio isn't adding up very favorably. Tinkering. Values 0x7 and 0xf should be avoided the like plague if your test load includes bursty multiple hogs-from-hell. Values 0x3 and 0xb are merely context switch happy. -Mike - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/