All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [Xenomai-help] Xenomai and futexes - Native API optimized for
@ 2007-05-09 18:10 M. Koehrer
  0 siblings, 0 replies; 8+ messages in thread
From: M. Koehrer @ 2007-05-09 18:10 UTC (permalink / raw)
  To: gilles.chanteperdrix, rpm

 user space only applications
Cc: xenomai@xenomai.org, mathias_koehrer@domain.hid
In-Reply-To: <4641F7A4.50105@domain.hid>
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
References: <4641F7A4.50105@domain.hid> <22908039.1178707932628.JavaMail.ngmail@domain.hid>
	<1178727256.11688.35.camel@domain.hid>
X-ngMessageSubType: MessageSubType_MAIL
X-WebmailclientIP: 84.160.96.10

Hi Gilles,
=20
> We could have a "sync object area" where all atomic counters would live,
> that would be mapped into real-time processes address space, the sync
> object would then only contain an index in this area. This would mean
> that the number of sync objects is limited, but it is a restriction far
> more acceptable than to allocate and share a full page by sync object.
That sounds great. I think typically only a few (up to 20) sync objects are=
 required.
Thus, one memory page should be enough for most applications.

Regards

Mathias

--=20
Mathias Koehrer
mathias_koehrer@domain.hid


Viel oder wenig? Schnell oder langsam? Unbegrenzt surfen + telefonieren
ohne Zeit- und Volumenbegrenzung? DAS TOP ANGEBOT JETZT bei Arcor: g=FCnsti=
g
und schnell mit DSL - das All-Inclusive-Paket f=FCr clevere Doppel-Sparer,
nur  39,85 =80  inkl. DSL- und ISDN-Grundgeb=FChr!
http://www.arcor.de/rd/emf-dsl-2


^ permalink raw reply	[flat|nested] 8+ messages in thread
* Re: [Xenomai-help] Xenomai and futexes - Native API optimized for
@ 2007-05-09 13:02 Fillod Stephane
  0 siblings, 0 replies; 8+ messages in thread
From: Fillod Stephane @ 2007-05-09 13:02 UTC (permalink / raw)
  To: xenomai; +Cc: M. Koehrer

Jan Kiszka wrote:
[...]
>Not saying that the futex idea itself is not worth pursuing, but I
would
>first of all think about if there aren't other, far simpler
>optimisations [...]

OProfile time?

-- 
Stephane


^ permalink raw reply	[flat|nested] 8+ messages in thread
* [Xenomai-help] Xenomai and futexes - Native API optimized for user space only applications
@ 2007-05-09 10:52 M. Koehrer
  2007-05-09 11:51 ` Jan Kiszka
  0 siblings, 1 reply; 8+ messages in thread
From: M. Koehrer @ 2007-05-09 10:52 UTC (permalink / raw)
  To: xenomai

Hi everybody,

I am using Xenomai for a high performance real time simulation system. 
All of the simulation code is executed within user space. One application is running that consists
of several Xenomai real time threads.
For performance reasons I am always using the latest PC technology available (which is currently
Pentium D or Core2Duo PCs, we are thinking even of using quad-core CPUs).
There has to be a kind of thread synchronisation e.g. when accessing shared data.
Hardware I/O is done via rtnet or via PCI I/O boards that work in user space aswell (PCI memory
mapped into the user space).
This is done e.g. by using semaphores, mutexes et.c
I like the Xenomai-native skin as it provides a very clear API that is easy to use.
However, for a user space only application it is a performance killer, that all API calls
lead to a mode switch from user to kernel space. Each API call takes about 1-2 microseconds (us)
on my PC which is really expensive.
Especially when inter process communication is used to protect the access to shared data
it is mostly the case that the calling thread does not have to wait. In this situation there is no
need for a context switch. The API call did not lead to a rescheduling of the available tasks.
And for this the required 1-2 us do really hurt.

Thus my question/proposal is if there is a plan to use a "variant" of the native API that is optimized for
user space only applications. In this case e.g. futexes can be used. If there is a need to
reschedule to another task it is fine to "invest" the 2us but it can be avoided mostly which should
increase the overall performance dramatically.
This would lead to a library where a big part of the functionality is handled directly in the library 
(in user space). Currently the skin passes the (user space) API call via a Xenomai System call 
to the kernel space to execute there the actual functionality.

Thanks for any feedback on this proposal.

Regards

Mathias





-- 
Mathias Koehrer
mathias_koehrer@domain.hid


Viel oder wenig? Schnell oder langsam? Unbegrenzt surfen + telefonieren
ohne Zeit- und Volumenbegrenzung? DAS TOP ANGEBOT JETZT bei Arcor: günstig
und schnell mit DSL - das All-Inclusive-Paket für clevere Doppel-Sparer,
nur  39,85 €  inkl. DSL- und ISDN-Grundgebühr!
http://www.arcor.de/rd/emf-dsl-2


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

end of thread, other threads:[~2007-05-09 22:36 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-09 18:10 [Xenomai-help] Xenomai and futexes - Native API optimized for M. Koehrer
  -- strict thread matches above, loose matches on Subject: below --
2007-05-09 13:02 Fillod Stephane
2007-05-09 10:52 [Xenomai-help] Xenomai and futexes - Native API optimized for user space only applications M. Koehrer
2007-05-09 11:51 ` Jan Kiszka
2007-05-09 12:27   ` [Xenomai-help] Xenomai and futexes - Native API optimized for M. Koehrer
2007-05-09 12:51     ` Jan Kiszka
2007-05-09 13:35     ` Herman Bruyninckx
2007-05-09 13:58       ` M. Koehrer
2007-05-09 15:46         ` Jan Kiszka
2007-05-09 22:36         ` Herman Bruyninckx

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.