linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Configuration of real-time tasks in PREEMPT_RT kernels > 2.6.33
@ 2013-08-26 12:28 Wolfgang Wallner
  2013-08-27  6:17 ` SV: " Simon Falsig
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Wolfgang Wallner @ 2013-08-26 12:28 UTC (permalink / raw)
  To: linux-rt-users

Dear RT community,

I have a question regarding the configuration of real-time tasks in PREEMPT
_RT kernels > 2.6.33.
Up to now, I only have experience with 2.6.33-rt.

I use the openPOWERLINK[1] real-time ethernet stack, and have it running on an x86-box with Ubuntu 13.04.
I try to use it with two different kernel versions:
* 2.6.33.7.2-rt30
* 3.2.48-rt69

When I use kernel version 2.6.33, I get very good results (jitter of ethernet frames on the network < +/-10us).
But when I use kernel version 3.2, the results are much worse. The jitter on the network increases up to +/-50us.

In my configuration, the openPOWERLINK stack consists of a kernel module (data link layer) and a user space application.

I know that in 2.6.33 there were splitted softirqs, and that it was possible to configure each thread with its own priority.
What are the steps that need to be done in 3.x to achieve similar results as in 2.6.33?

kind regards,
Wolfgang Wallner

[1] http://sourceforge.net/projects/openpowerlink/

PS: Running cyclictest (e.g. sudo cyclictest -p 99 -n -i 500) on both kernels shows very similar results (avg latency: 15us, max latency 35us). 

^ permalink raw reply	[flat|nested] 6+ messages in thread
* SV: Configuration of real-time tasks in PREEMPT_RT kernels > 2.6.33
@ 2013-08-27  9:14 Wolfgang Wallner
  0 siblings, 0 replies; 6+ messages in thread
From: Wolfgang Wallner @ 2013-08-27  9:14 UTC (permalink / raw)
  To: Simon Falsig; +Cc: linux-rt-users

Hello Simon,
> From the openPOWERLINK documentation (linux-x86.txt):

Thanks for the answer, but I already knew this documentation :)
I have applied the described steps, and I think they work as expected.
My box has two cores, and I can see in htop that nothing is running on the second cpu, except my tasks which I start with the tool taskset.
Also in /proc/interrupts I can see that all IRQs are handled by the first cpu, except the POWERLINK-related ones, which are handled by the second cpu.
So as far as I know everything is configured as expected, however, I still see non-satisfying results with kernel 3.2-rt.

I have uploaded two images with measurements results for easy comparison:
2.6.33-rt: http://imageshack.us/photo/my-images/818/q4de.png/
3.2-rt: http://imageshack.us/photo/my-images/845/nqdw.png/

Both images show the reaction of the openPOWERLINK-stack on different workloads on the two kernels.
Any further hints on how to improve the 3.2-rt results are greatly appreciated :)

kind regards, Wolfgang Wallner

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-08-29  7:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-26 12:28 Configuration of real-time tasks in PREEMPT_RT kernels > 2.6.33 Wolfgang Wallner
2013-08-27  6:17 ` SV: " Simon Falsig
2013-08-27  9:50 ` Jeremy Jongepier
2013-08-27 21:12 ` Carsten Emde
2013-08-29  7:57 ` Wolfgang Wallner
  -- strict thread matches above, loose matches on Subject: below --
2013-08-27  9:14 SV: " Wolfgang Wallner

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).