[ros-users] Arm Core Performance

Josh Faust jfaust at willowgarage.com
Tue Jul 13 00:46:43 UTC 2010


Can you try it with a publisher/subscriber in the same process, both passing
the message as a shared_ptr and not?  e.g. both:

Msg m;
publisher.publish(m);

and

MsgPtr m(new Msg);
publisher.publish(m);

Also, can you try running the pointcloud_serdes executable in the
test_roscpp_serialization_perf package?

This should at least help narrow down where the bottleneck may be occurring.
 The first will do everything the same as interprocess except it won't hit
the TCP stack, while the second will bypass almost everything.
 pointcloud_serdes should let us know if it's the
serialization/deserialization itself.

Josh

On Mon, Jul 12, 2010 at 9:46 AM, Brian Gerkey <gerkey at willowgarage.com>wrote:

> hi Daniel,
>
> We're interested in supporting ROS on embedded platforms such as the
> one you're working with. But we don't do embedded development
> ourselves, so it's possible that we're not aware of optimizations that
> are especially relevant in that domain.
>
> If you can track down the source of the performance bottleneck, please
> let us know and we'll work with you to improve things.
>
>        brian.
>
> On Thu, Jul 8, 2010 at 7:02 PM, Daniel Stonier <d.stonier at gmail.com>
> wrote:
> > Now that I'm getting some working results, I'm a bit curious about the
> > arm performance for ros messaging. I have two test cases running on an
> > armv6 core (arm1176jzf-s).
> >
> > Topics (time taken from publisher sending a message to subscriber
> > callback activating)
> >  - intel i5: ~200us
> >  - armv6: ~ 20ms
> >
> > Services (time taken on a round trip rpc request response passing
> > float64 data values)
> >  - intel i5: ~2ms
> >  - armv6: ~ 190ms
> >
> > Can it really be 100x slower? This kernel does not yet have a low
> > latency scheduler (kernel premption is not configured, will figure out
> > how to do that later) but I thought that would only affect performance
> > by a few milliseconds, not tens or hundreds of ms. Is there perhaps
> > some critical kernel configuration or something similar I'm missing? I
> > guess the next thing to do would be to write a very simple tcp/ip
> > client/server pair and test it without ros.
> >
> > Regards,
> > Daniel.
> >
> > --
> > Phone : +82-10-5400-3296 (010-5400-3296)
> > Home: http://snorriheim.dnsdojo.com/
> > Yujin Robot: http://www.yujinrobot.com/
> > Embedded Control Libraries:
> http://snorriheim.dnsdojo.com/redmine/wiki/ecl
> > _______________________________________________
> > ros-users mailing list
> > ros-users at code.ros.org
> > https://code.ros.org/mailman/listinfo/ros-users
> >
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100712/af7dbb88/attachment-0003.html>


More information about the ros-users mailing list