[Rock-dev] updateHook hanging (blocked?) when started via syskit
Christian Rauch
Christian.Rauch at dfki.de
Tue Dec 17 20:07:01 CET 2013
Hi,
thanks so far for the comments.
* bundles vs. orocos.rb:
I attached two scripts which start aria and two camera_ids via:
a) the orocos.rb API (run_via_orocos.rb)
b) the bundle (run_via_bundle.rb)
Running 'run_via_orocos' for 15 minutes on the robot, no warnings
appear; running 'run_via_bundle' these warnings appear within 2 minutes.
The load (1min avg) is between 1.5 and 2.0 (2 CPUs).
Monitoring both CPUs remotely via ksysguard, one can see that both CPUs
have high loads up to 100% around the same time. If I run via bundles,
both CPUs might have their maximum load at the same time and this is
when a delay occurs. There are no delays with running via orocos.rb when
CPUs have maximum load at the same time.
For testing purposes: Is it possible to let syskit use deployments
started outside of syskit (e.g. in a bash) by telling syskit which tasks
to use by just giving the task names under which they were registered at
corba?
* for the camera_ids issue:
The updateHook of the camera_ids triggers itself when a new frame is
available (or receives a timeout):
{{{
if(mIsFrame && getFrame()) {
[...]
}
mIsFrame = false;
if (cam_interface->isFrameAvailable()) {
mIsFrame = true;
this->getActivity()->trigger();
} else {
RTT::log(RTT::Error) << "No frame received during timeout
period." << RTT::endlog();
report(TIMEOUT_ERROR);
}
}}}
But this issue is not only related to the camera. In previous runs of
corridor servoing (no cameras started; but Hokuyo, Dynamixel, Xsens) the
same Warnings appear.
Regards,
Christian
Am 17.12.2013 11:56, schrieb Matthias Goldhoorn:
> ah okay,
> but btw.
> you mentioned that the tasks are not within the same deployment.
> the only Linux in responsible (if they are periodic) for the execution.
> Try to start everything with run scripts (including logger) and with the
> same-policy. You will get the same behavior like in syskit's start up.
>
> So solve the issue try to use the solution Alex mentioned, if the camera
> would take too long to acquire the images.
> BUT i assume still you have a too high load on your system. Maybe you
> have some high-speed sensors and sensor fusion components NOT within the
> same deployment which leads into your problems.
>
> Maybe there are ways to influence the system behavior, but for this you
> need to identify the components that took your power.
> You could use the task-scheduler, i added a new option for this to debug
> execution times of tasks.
>
> Summarize:
> - make sure all high-speed sensor data within one deployment
> - separate processing components from this base chain
> - increase priority for important tasks
> - take a look on the system LOAD (not only the most-consuming component)
> - debug components with the scheduler (or any way you prefer)
> - Make sure no TCP connection is active (Use MQueues instead of corba,
> don't use the Task-inspector while debugging)
>
> Matthias
>
> On 17.12.2013 11:14, Elmar Berghöfer wrote:
>> Hi,
>>
>> Am 17.12.2013 11:08, schrieb Matthias Goldhoorn:
>>> On 17.12.2013 11:07, Elmar Berghöfer wrote:
>>>> No it just was a replacement of the on-board robot PC by the laptop
>>>> to make clear that it has nothing to do with performance of the
>>>> on-board pc.
>>> Who does the serial interface to the robot in this case. I assume
>>>
>>> - Laptop -> camera started
>>> - Onboard-PC Serial interface for seekuhr
>> no - Laptop -> connected to Robot controller (via usb-serial converter).
>>
>> Onboard PC not used in this scenario.
>>
>> Test should just figure out if the "quite" low performance of the
>> on-board pc (even if theoretically should already be enough) is an
>> issue or not.
>> The Lapptop System has much more performance than the on-board pc.
>>
>> Regards
>> Elmar
>>
>>>
>>> Right, and there you got the same scheduling problems?
>>>
>>> Matthias
>>>
>>
>>
>>
>> _______________________________________________
>> Rock-dev mailing list
>> Rock-dev at dfki.de
>> http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev
>
>
> --
> Dipl.-Inf. Matthias Goldhoorn
> Space and Underwater Robotic
>
> Universität Bremen
> FB 3 - Mathematik und Informatik
> AG Robotik
> Robert-Hooke-Straße 1
> 28359 Bremen, Germany
>
> Zentrale: +49 421 178 45-6611
>
> Besuchsadresse der Nebengeschäftstelle:
> Robert-Hooke-Straße 5
> 28359 Bremen, Germany
>
> Tel.: +49 421 178 45-4193
> Empfang: +49 421 178 45-6600
> Fax: +49 421 178 45-4150
> E-Mail:matthias.goldhoorn at informatik.uni-bremen.de
>
> Weitere Informationen:http://www.informatik.uni-bremen.de/robotik
>
--
Christian Rauch
Space Robotics
Universität Bremen
FB 3 - Mathematik und Informatik
AG Robotik
Robert-Hooke-Straße 1
28359 Bremen, Germany
Zentrale: +49 421 178 45-6611
Besuchsadresse der Nebengeschäftstelle:
Robert-Hooke-Straße 5
28359 Bremen, Germany
Tel: +49 421 178 45-6619
Empfang: +49 421 178 45-6600
Fax: +49 421 178 45-4150
E-Mail: Christian.Rauch at dfki.de
Weitere Informationen: http://www.informatik.uni-bremen.de/robotik
-------------- next part --------------
A non-text attachment was scrubbed...
Name: aria_delay_test.tar.gz
Type: application/x-gzip
Size: 2689 bytes
Desc: not available
Url : http://www.dfki.de/pipermail/rock-dev/attachments/20131217/1a5c1a78/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4988 bytes
Desc: S/MIME Cryptographic Signature
Url : http://www.dfki.de/pipermail/rock-dev/attachments/20131217/1a5c1a78/attachment-0001.bin
More information about the Rock-dev
mailing list