From: Patrice Kadionik <kadionik@enseirb-matmeca.fr>
To: linux-rt-users@vger.kernel.org
Subject: Re: Fwd: Re: preempt-rt amd uClibc
Date: Wed, 20 Apr 2011 14:00:46 +0200 [thread overview]
Message-ID: <4DAECAEE.4020503@enseirb-matmeca.fr> (raw)
In-Reply-To: <1303296464.4daeb9d04a026@webmail.aon.at>
Le 20/04/2011 12:47, Johannes Bauer a écrit :
> Thats good news, thank you Remy!
Hi Johannes,
> I was able to run cyclictest
Great news!
Can you post your latest hrtimer port for your HW? It could be useful
for anyone who will want to do the same thing in the future...
> \\\"cyclictest -t1 -p 80 -n -i 10000 -l 1000\\\" an thw maximum latencies were about
> 650us. However the intervall timers \\\"cyclictest -t1 -p 80 -i 10000 -l 1000\\\"
> result in abou 3000us maximum latencies.
> Is it common that interval timers have higher latencies and could this values be
> reasonable for a 72MHz arm7tdmi (ARMv4T).
You may read this paper (page 2) from OSADL:
https://www.osadl.org/fileadmin/dam/press/Industrial-Ethernet-Book-2009-05.pdf
It gives an empirical law for max latency under PREEMPT-RT:
"A number of commercially available Linux distributions (e.g. Red Hat’s
MRG) already contain the PREEMPT_RT patches in production quality. The
worst-case rule-of-thumb latency is in the range of 10^5 multiplied by
the CPU cycle duration with these systems without special optimisation.
For example, a 1GHz processor has a cycle duration of one nanosecond
which results in a worst-case latency of about 100μs. This is considered
sufficient for the vast majority of real-time projects. Using latency
optimisation, however, the worst-case latency can be reduced by up to
three times."
For a 72 MHz CPU clock, it gives: 1388 µs
I've done a PREEMPT-RT port for NIOS 2 with MMU (with hrtimer port too).
With cyclictest, I've measured for a low performance design with 50 MHz
NIOS 2 HW a latency up to 1400 µs and for another more powerful design
with 125 MHz NIOS 2 HW a latency up to 650 µs.
Your 650 µs value sounds reasonable.
Cheers;
Pat.
> Anyone has any values to compare or can tell me if those values are reasonable?
>
> Kind Regards
> Johannes Bauer
>
> ----- Original von: Remy Bohmer
>
>> Hi,
> 2011/4/15 Johannes Bauer<hannes_bauer@aon.at>:
>> Hi everybody!
>>
>> I downloaded the newest uClinux dist a while ago and compiled it with 2.6.33
> kernel and the 2.6.33.7.2-rt30 patch applied.
>> Then i by hand implemeted an old patch for arm lpc22xx machine (ARMv4T), since
> i am running a lpc2478 board from embedded artists.
>> I had to implement a clockevent/source timer to add hrtimer support. I
> compiled it all with uClibc since it as a NOMMU system.
>> Now i have some questions:
>> Is it possible to run the preempt-rt patch with the uClinux distribution and
> uClibc?
>
> The preempt-RT patch runs just fine with a uClibc userspace, I have no
> idea what it will do in a NOMMU system (never tried it)
>
>> I read a few times that if doesnt support PI mutexes, but arent those RT
> mutexes part of the kernel?
>
> The kernel itself has PI-mutexes support, _internally_within_ the
> kernel; regardless what type of userspace C-library is being used.
> However, for _userspace_ PI-mutexes, you will need a C-library that
> supports it (search for example for PTHREAD_PRIO_INHERIT in the
> library code). 2 options:
> * Glibc since version 2.5 (actually 2.4.90 and higher)
> * uClibc master. You might have some luck since there is now NPTL
> support in uClibc master. So, get the master tree of uClibc and see if
> it works for you.
> (http://git.uclibc.org/uClibc/snapshot/uClibc-master.tar.gz)
> I have not tested it myself though, but if it works, please share the
> good news.
>
> Have Fun!
>
> Remy
> --
> To unsubscribe from this list: send the line \\\"unsubscribe linux-rt-users\\\" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>
> ----- Ende der weitergeleiteten Nachricht -----
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
Patrice Kadionik. F6KQH / F4CUQ
-----------
+----------------------------------------------------------------------+
+"Tout doit etre aussi simple que possible, pas seulement plus simple" +
+----------------------------------------------------------------------+
+ Patrice Kadionik http://www.enseirb-matmeca.fr/~kadionik +
+ IMS Laboratory http://www.ims-bordeaux.fr/ +
+ ENSEIRB-MATMECA http://www.enseirb-matmeca.fr +
+ PO BOX 99 fax : +33 5.56.37.20.23 +
+ 33402 TALENCE Cedex voice : +33 5.56.84.23.47 +
+ FRANCE mailto:patrice.kadionik@ims-bordeaux.fr +
+----------------------------------------------------------------------+
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2011-04-20 12:00 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-20 10:47 Fwd: Re: preempt-rt amd uClibc Johannes Bauer
2011-04-20 12:00 ` Patrice Kadionik [this message]
2011-04-28 15:08 ` sched_clock for arm Johannes Bauer
2011-05-03 7:13 ` Johannes Bauer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4DAECAEE.4020503@enseirb-matmeca.fr \
--to=kadionik@enseirb-matmeca.fr \
--cc=linux-rt-users@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).