Messages in this thread | | | Date | Sat, 30 Oct 2004 23:38:49 +0200 | From | Florian Schmidt <> | Subject | Re: [Fwd: Re: [patch] Real-Time Preemption, -RT-2.6.9-mm1-V0.4] |
| |
On Sat, 30 Oct 2004 17:26:06 -0400 Lee Revell <rlrevell@joe-job.com> wrote:
> On Sat, 2004-10-30 at 23:13 +0200, Florian Schmidt wrote: > > ah, ok.. tarball updated. The third argument is now a percentage. If the > > cycle count difference between two different wakeups differs more than the > > specified percentage from the "perfect" period, then a line is printed to > > the terminal showing by how much percent it differs. > > OK this is pretty sweet. With T3 the jitter never exceeds 7% on an idle > system. As soon as I start moving the mouse this goes to 7 or 8%. I > cannot get it to go higher than 10%. Moving windows around has no > effect, the highest jitter happens when I type or move the mouse really > fast IOW it corresponds to the interrupt rate. > > This is a pretty good baseline for what an xrun-free system would look > like. Now to test the latest version...
Well,
on V0.5.16 i see something like the below output (which is much worse). It seems that missed irq's with rtc show up at the same time as the xruns in jackd do [i ran both jackd and wakeup in parallel].
While there's no way to deterministically force missed irq's by window wiggling [we should make it olympic discipline :)], UI action seems to raise the probability somewhat.
~/source/my_projects/wakeup$ ./rt_wakeup 1024 50000 10 freq: 1024 #: 50000 getting cpu speed 1194.908 MHz # of cycles for "perfect" period: 1166902 setting up /dev/rtc. locking memory... turning irq on, beginning measurement (might take a while). threshold violated: 1485237 cycles since last wakeup (27.2804%). threshold violated: 1047469 cycles since last wakeup (10.235%). threshold violated: 964069 cycles since last wakeup (17.3822%). ouch! we missed one ore more irq[s] threshold violated: 4037774 cycles since last wakeup (246.025%). threshold violated: 620764 cycles since last wakeup (46.8024%). threshold violated: 10327889 cycles since last wakeup (785.069%). ouch! we missed one ore more irq[s] threshold violated: 700832 cycles since last wakeup (39.9408%). threshold violated: 3148900 cycles since last wakeup (169.851%). ouch! we missed one ore more irq[s] threshold violated: 231791 cycles since last wakeup (80.1362%). threshold violated: 768584 cycles since last wakeup (34.1347%). ouch! we missed one ore more irq[s] threshold violated: 3500123 cycles since last wakeup (199.95%). threshold violated: 2581587 cycles since last wakeup (121.234%). threshold violated: 920020 cycles since last wakeup (21.157%). threshold violated: 2430290 cycles since last wakeup (108.269%). threshold violated: 240850 cycles since last wakeup (79.3599%). threshold violated: 3614768 cycles since last wakeup (209.775%). ouch! we missed one ore more irq[s] threshold violated: 883969 cycles since last wakeup (24.2465%). threshold violated: 479302 cycles since last wakeup (58.9253%). threshold violated: 830208 cycles since last wakeup (28.8537%). threshold violated: 2313154 cycles since last wakeup (98.2304%). threshold violated: 516698 cycles since last wakeup (55.7205%). threshold violated: 2545998 cycles since last wakeup (118.184%). ouch! we missed one ore more irq[s] threshold violated: 4466286 cycles since last wakeup (282.747%). ouch! we missed one ore more irq[s] threshold violated: 565233 cycles since last wakeup (51.5612%). threshold violated: 184668 cycles since last wakeup (84.1745%). threshold violated: 2854676 cycles since last wakeup (144.637%). threshold violated: 3384620 cycles since last wakeup (190.052%). ouch! we missed one ore more irq[s] threshold violated: 282832 cycles since last wakeup (75.7621%). threshold violated: 2741798 cycles since last wakeup (134.964%). ouch! we missed one ore more irq[s] threshold violated: 1405657 cycles since last wakeup (20.4606%). threshold violated: 227030 cycles since last wakeup (80.5442%). threshold violated: 3476092 cycles since last wakeup (197.891%). ouch! we missed one ore more irq[s] threshold violated: 448723 cycles since last wakeup (61.5458%). threshold violated: 2390327 cycles since last wakeup (104.844%). ouch! we missed one ore more irq[s] threshold violated: 1489252 cycles since last wakeup (27.6244%). threshold violated: 517884 cycles since last wakeup (55.6189%). threshold violated: 3774860 cycles since last wakeup (223.494%). ouch! we missed one ore more irq[s] threshold violated: 1762452 cycles since last wakeup (51.0368%). threshold violated: 1545052 cycles since last wakeup (32.4063%). ouch! we missed one ore more irq[s] threshold violated: 442749 cycles since last wakeup (62.0577%). threshold violated: 2230841 cycles since last wakeup (91.1764%). threshold violated: 5825655 cycles since last wakeup (399.241%). ouch! we missed one ore more irq[s] threshold violated: 2874721 cycles since last wakeup (146.355%). ouch! we missed one ore more irq[s] threshold violated: 647431 cycles since last wakeup (44.5171%). threshold violated: 126309 cycles since last wakeup (89.1757%). threshold violated: 5817415 cycles since last wakeup (398.535%). ouch! we missed one ore more irq[s] threshold violated: 661937 cycles since last wakeup (43.274%). threshold violated: 4351747 cycles since last wakeup (272.932%). ouch! we missed one ore more irq[s] threshold violated: 442189 cycles since last wakeup (62.1057%). threshold violated: 115427 cycles since last wakeup (90.1083%). done.
total # of irqs: 50032. missed irq deadlines: 17
mean cycle difference betweem two wakeups: 1.16779e+06 cycles
min. cycle difference betweem two wakeups: 115427 cycles (#: 44584) diff from mean diff: 1.05237e+06
max. cycle difference betweem two wakeups: 1.03279e+07 cycles (#: 8869) diff from mean diff: 9.1601e+06
mean difference from mean difference: 6458.8 cycles
~/source/my_projects/wakeup$ - 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/
| |