All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@domain.hid>
To: Nathan Lauener <nathan.lauener@domain.hid>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] CPU load over 90%[Scanned]
Date: Tue, 16 May 2006 14:52:48 +0200	[thread overview]
Message-ID: <4469CB20.9030909@domain.hid> (raw)
In-Reply-To: <4469C85C.7060900@domain.hid>

[-- Attachment #1: Type: text/plain, Size: 3342 bytes --]

Nathan Lauener wrote:
> Jan Kiszka wrote:
> 
>> Lauener Nathan wrote:
>>  
>>
>>> Hi, I am using Xenomai to read data from different sensors in real
>>> time from
>>> user space. So far I am reading position data from a device attached to
>>> a serial port. The CPU load is at about 1%. I also have a
>>> microcontroller attached via USB to read encoder data. The USB device is
>>> a USB-to-serial converter. As soon as I open the (USB-)serial port with
>>> normal systemcalls and read the incoming data my CPU load skyrockets to
>>> over 90%. I only read about 30 bytes every 100ms.
>>> I ran the application on a much newer computer also to rule out any
>>> buggy hardware. The results stayed the same. Intensively searching the
>>> mailing list and provided documentation have not helped solve the
>>> problem. I'm using Xenomai 2.1.0 with kernel 2.6.15.6. Xenomai is
>>> compiled into
>>> the kernel. I also use the driver xeno_16550A loaded as module. The
>>> USB-to-serial bridge used is a CP2101 from Silabs.   
>>
>> Is there any IRQ conflict between the USB host controller and some
>> RT-device? Please check /proc/interrupts and /proc/xenomai/irq.
>>  
>>
> There is no conflict (interrupt 0 (timer) is the only interrupt
> mentioned in both listings).

Ok, just to exclude this.

> 
>> Which process is consuming your CPU time? At system or at user level?
>>  
>>
> It seems that the system consumes the CPU time. Here are the first few
> lines from opreport
> 
> CPU: CPU with timer interrupt, speed 0 MHz (estimated)
> Profiling through timer interrupt
> samples  %        image name               app name                
> symbol name
> 1733     31.9742  vmlinux                  vmlinux                 
> default_idle
> 1151     21.2362  vmlinux                  vmlinux                 
> __ipipe_trace
> 601      11.0886  libqt-mt.so.3.3.3        libqt-mt.so.3.3.3        (no
> symbols)
> 528       9.7417  libc-2.3.2.so            libc-2.3.2.so            (no
> symbols)
> 305       5.6273  vmlinux                  vmlinux                 
> __ipipe_unstall_root
> 184       3.3948  vmlinux                  vmlinux                 
> __ipipe_dispatch_event
> 122       2.2509  anon (tgid:4322 range:0x81fb000-0x89b2000)
> Xorg                     (no symbols)
> 100       1.8450  libstdc++.so.5.0.7       libstdc++.so.5.0.7       (no
> symbols)
> 97        1.7897  vmlinux                  vmlinux                  mcount
> 
> It looks like the systems gets stuck on the idle task. I do not know
> what __ipipe_trace exactly does.

__ipipe_trace belongs to the ipipe-tracer you seem to have patched into
your system. It's called on EVERY kernel function's entry, so it should
show up on higher ranks. Disable the tracer first to get a more
consistent profile.

> 
>> Jan
>>
>>  
>>
> In my current design I acquire and process the data in the same programm
> using the Xenomai native skin from user space. This means I link the
> Xenomai-native and rtdm libraries with several graphics and mathematical
> libraries. Could this lead to conflicts or problems with Xenomai?

Should not, we do the same here (e.g. with opencv). Anyway, reducing
your scenario to the minimum that still performs badly can help to
identify the reason.

Jan


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 250 bytes --]

  reply	other threads:[~2006-05-16 12:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-15 10:07 [Xenomai-help] CPU load over 90% Lauener Nathan
2006-05-15 12:01 ` Jan Kiszka
2006-05-16 12:41   ` [Xenomai-help] CPU load over 90%[Scanned] Nathan Lauener
2006-05-16 12:52     ` Jan Kiszka [this message]
2006-05-17  9:21       ` Nathan Lauener
2006-05-17 10:56         ` Jan Kiszka
2006-05-22 11:37           ` Nathan Lauener

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=4469CB20.9030909@domain.hid \
    --to=jan.kiszka@domain.hid \
    --cc=nathan.lauener@domain.hid \
    --cc=xenomai@xenomai.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 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.