Re: timing errors
[email protected] Thu, 4 Jan 2007 17:05:40 +0100 (CET)
| Newsgroups | gmane.linux.real-time.rtlinux.general |
|---|---|
| Message-ID | <[email protected]> |
> Hello again,
> I have ran the examples/measurement test and the results are not so
> consistent as seen below.
>
> ACPI and Power Management support was disabled from kernel. Test environment
> is:
> rtlinux-3.2-pre3
> prepatched-linux-2.4.29
> pentium mobile 2 ghz cpu
>
> absolute = 0;
> mode = 0;
> advance = 0;
> bperiod = 0;
>
> also commented negatif sign check of diff :
> /*if (diff < 0) {
> diff = -diff;
> }*/
>
> Now starting the application
> The "min" is the smallest timing error
> A negative value means that the task ran too early
> The "max" is the largest timing error
> min: -608, max: 768
negative min does not mean the task ran too early - as the diff is the
current run - last run if the last run was late then you get a negative
value even if the run is on time - There are no early runs as the pit/tsc
is set to run at X it will not trigger the interrupt before X and thus it
will always be "late" unless you used the "advance" (which you did not).
> min: -192, max: 320
> min: -192, max: 224
> min: -192, max: 192
> min: -260480, max: 260608
Thats a clear indication of this hardware having a problem - not sure
about the PentiumMs frequency scalling - if it does due frequency
scaling then RTLinux will not be able to handle this.
> min: -192, max: 192
> min: -192, max: 192
> min: -160, max: 192
> min: -192, max: 224
> min: -320, max: 288
> min: -30176, max: 30112
> min: -192, max: 256
> min: -297280, max: 297184
> min: -160, max: 224
> min: -160, max: 192
> min: -192, max: 160
> min: -160, max: 128
> min: -192, max: 224
> min: -62368, max: 62496
> min: -192, max: 192
> min: -296320, max: 296320
> min: -192, max: 224
> min: -192, max: 224
> min: -192, max: 224
> min: -192, max: 160
> min: -192, max: 224
> min: -84992, max: 85056
> min: -192, max: 160
> min: -324576, max: 324736
> min: -160, max: 192
> min: -192, max: 224
> min: -192, max: 320
> min: -160, max: 224
> min: -192, max: 352
> min: -192, max: 192
>
> Why so big values among them? I have tested same code on a platform
> with pentium IV 2Ghz and results are not better but consistent.
>
ok PIV I get very bad results as well - which is definitly due to
the CPU throtling that the PIV needs to not be toasted imediately - in
fact it changes the CPU speed every 125ms as far as I know (atleast the
one we tested on) and the bios did not allow disabling this "feature"
I would strongly suspect that you will see more or less the same jitter
values if you have your application running or not - on my PIV I get these
large values on an idle system as well - could you check ?
hofrat
_______________________________________________
Rtl mailing list
[email protected]
http://hq.fsmlabs.com/mailman/listinfo/rtl
http:/www.rtlinux-gpl.org/