Messages in this thread | | | Date | Sat, 19 May 2007 00:07:28 +0300 | From | "Török Edvin" <> | Subject | Re: CFS Scheduler and real-time tasks |
| |
On 5/17/07, Ingo Molnar <mingo@elte.hu> wrote: > hey, cool! Also try -v13 - it should be even more tighter.
I tried -v13. However the scheduling "error" is now 10% (vs 2% with -v12).
I also noticed strange behaviour with CPU hotplug. I offlined cpu1 (echo 0 >/sys/devices/system/cpu/cpu1/online), and the typing speed on my terminal decreased noticably. I could hardly type something there. The system was otherwise idle (running in Xorg, and gnome-terminal). As soon as I started massive_intr.c workload, the keyboard typing speed became normal again. If I have a workload running, while I offline a CPU the keyboard is fine after cpu1 is offlined. Also the entire system froze once, when I offlined cpu1. I couldn't reproduce this.
I don't know how -v12 behaved wrt to CPU hotplug.
> > ./massiv_new 9 300 > > 020860 00017782 > > 020858 00017774 > > > > RT JOB:020865 00003785 > > > > 020859 00017048 > > 020862 00017387 > > 020855 00017494 > > 020861 00017245 > > 020863 00017492 > > 020864 00017122
Results with -v13:
edwin@localhost ~ $ ./mo 9 300 006203 00006071 006198 00005712 006201 00006088 006196 00006208 006200 00006166 006195 00006306 006199 00006403 006197 00006288 006202 00006237
./massiv_new 9 300 013803 00010073 013801 00009889 013804 00010303 013806 00009953 013800 00010010 013802 00010171 013807 00009956 013805 00010037
RT JOB:013808 00002230
Interesting, massiv_new has better precision than massiv_orig.
Just in case it helps, here's me /proc/sched_debug (when system is idle, and later, when running the test):
Sched Debug Version: v0.02 now at 1187357967816 nsecs
cpu: 0 .nr_running : 0 .raw_weighted_load : 0 .nr_switches : 555712 .nr_load_updates : 221754 .nr_uninterruptible : 4294967190 .jiffies : 221839 .next_balance : 221835 .curr->pid : 0 .clock : 755701854416 .prev_clock_raw : 871997978419 .clock_warps : 0 .clock_unstable_events : 97254 .clock_max_delta : 4749235 .fair_clock : 184031607224 .prev_fair_clock : 0 .exec_clock : 749010316890 .prev_exec_clock : 0 .wait_runtime : 59753136705 .wait_runtime_overruns : 2689 .wait_runtime_underruns: 1141 .cpu_load[0] : 0 .cpu_load[1] : 0 .cpu_load[2] : 0 .cpu_load[3] : 0 .cpu_load[4] : 0 .wait_runtime_rq_sum : 0
runnable tasks: task PID tree-key delta waiting switches prio sum-exec sum-wait sum-sleep wait-overrun wait-underrun ------------------------------------------------------------------------------------------------------------------------------------------------------------------
cpu: 1 .nr_running : 1 .raw_weighted_load : 1024 .nr_switches : 378755 .nr_load_updates : 202398 .nr_uninterruptible : 106 .jiffies : 221839 .next_balance : 221830 .curr->pid : 20421 .clock : 794219468967 .prev_clock_raw : 874002443396 .clock_warps : 0 .clock_unstable_events : 116368 .clock_max_delta : 4531475 .fair_clock : 175306014212 .prev_fair_clock : 0 .exec_clock : 718501418488 .prev_exec_clock : 0 .wait_runtime : -59753140134 .wait_runtime_overruns : 1245 .wait_runtime_underruns: 1604 .cpu_load[0] : 0 .cpu_load[1] : 0 .cpu_load[2] : 0 .cpu_load[3] : 0 .cpu_load[4] : 0 .wait_runtime_rq_sum : -34602
runnable tasks: task PID tree-key delta waiting switches prio sum-exec sum-wait sum-sleep wait-overrun wait-underrun ------------------------------------------------------------------------------------------------------------------------------------------------------------------ R cat 20421 175306048814 34602 -34602 2 120 69205 -34602 853 0 0
And sched_debug output while running the test:
Sched Debug Version: v0.02 now at 1261993795754 nsecs
cpu: 0 .nr_running : 5 .raw_weighted_load : 5120 .nr_switches : 588021 .nr_load_updates : 232164 .nr_uninterruptible : 4294967190 .jiffies : 240498 .next_balance : 240508 .curr->pid : 21096 .clock : 770190363479 .prev_clock_raw : 895084968848 .clock_warps : 0 .clock_unstable_events : 125214 .clock_max_delta : 0 .fair_clock : 190695995910 .prev_fair_clock : 0 .exec_clock : 763286081256 .prev_exec_clock : 0 .wait_runtime : 68703429598 .wait_runtime_overruns : 2978 .wait_runtime_underruns: 1273 .cpu_load[0] : 5120 .cpu_load[1] : 5119 .cpu_load[2] : 5110 .cpu_load[3] : 5077 .cpu_load[4] : 5037 .wait_runtime_rq_sum : -54771343
runnable tasks: task PID tree-key delta waiting switches prio sum-exec sum-wait sum-sleep wait-overrun wait-underrun ------------------------------------------------------------------------------------------------------------------------------------------------------------------ R mo 21096 190703231293 7235383 -7235383 445 120 1813432308 -8250501 211806979 0 1 mo 21093 190704201003 8205093 -8472612 450 120 1818737228 -12394371 206140729 0 6 mo 21094 190704732208 8736298 -9665761 464 120 1816895620 -12925451 204333757 0 4 mo 21092 190704971831 8975921 -15574122 456 120 1817099155 -16680247 208648471 0 2 mo 21091 190705631487 9635577 -13823465 457 120 1816983212 -16160000 204693203 0 4
cpu: 1 .nr_running : 5 .raw_weighted_load : 5120 .nr_switches : 415103 .nr_load_updates : 211674 .nr_uninterruptible : 106 .jiffies : 240498 .next_balance : 240516 .curr->pid : 21291 .clock : 806335506481 .prev_clock_raw : 897090740058 .clock_warps : 0 .clock_unstable_events : 150133 .clock_max_delta : 0 .fair_clock : 179777580248 .prev_fair_clock : 0 .exec_clock : 730473748729 .prev_exec_clock : 0 .wait_runtime : -68769955037 .wait_runtime_overruns : 1250 .wait_runtime_underruns: 1885 .cpu_load[0] : 4096 .cpu_load[1] : 4293 .cpu_load[2] : 5044 .cpu_load[3] : 7236 .cpu_load[4] : 8445 .wait_runtime_rq_sum : -11785269
runnable tasks: task PID tree-key delta waiting switches prio sum-exec sum-wait sum-sleep wait-overrun wait-underrun ------------------------------------------------------------------------------------------------------------------------------------------------------------------ R cat 21291 179777631414 51166 -51166 2 120 66773 -51166 53218 0 0 mo 21095 179778195659 615411 -799325 737 120 2088825958 -799325 201402067 0 0 mo 21090 179778267640 687392 -711781 760 120 2094378519 -711781 208607795 0 0 mo 21097 179781627293 4047045 -5262328 789 120 2090034861 -5262328 202105919 0 0 mo 21089 179782321359 4741111 -4960669 757 120 2094677840 -4960669 202830299 0 0 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |