No subject
Tue Mar 2 09:14:18 PST 2010
>The ROS TCP transport achieves high throughput when the maximum queue
length (q) is set to infinity, but at the
>expense of message latency. Various settings of q provide an adjustable
tradeoff between throughput and latency.
On Thu, Sep 9, 2010 at 12:06 PM, Ken Conley <kwc at willowgarage.com> wrote:
> Hi Konrad,
>
> If you read this paper from the authors of LCM, you will find that the
> performance of ROS, LCM, and IPC are generally comparable (note: the
> article tests LCM's UDP implementation against ROS' TCP
> implementation):
>
> http://lcm.googlecode.com/files/2010-huang-olson-moore-lcm-iros.pdf
>
> Comparing any middleware to "raw TCP" is generally difficult to come
> to conclusions, especially without including exact information on how
> your test was conducted. With any middleware, there is the overhead of
> (un)marshaling the data into individual messages. The size and
> composition of these messages is a significant factor in any
> performance numbers that result.
>
> - Ken
>
> On Thu, Sep 9, 2010 at 11:48 AM, Konrad Banachowicz <konradb3 at gmail.com>
> wrote:
> > Dear all,
> > I recently done some testing on ROS communication performence.
> > There are the reesults :
> > throughput [MB/s] time [s] data
> [MB]
> > ROS 7.25906 4.827058 35.0399
> > raw TCP 56.8430 8.387205 476.75466
> > POSIX MQ 124.36626 3.834136 476.837158
> >
> > That shows grate overhead of ROS communication.
> > I looked on code, I found that the communication code is very complicated
> > and contains many locks and queues. It's also integrate interprocess and
> > intraprocess communication. This with all callback stuff make whole
> > communication overcomplicated.
> >
> > I think this show serious problem with design of whole network stack in
> ROS.
> >
> > I will do some more testing.
> >
> > Pozdrawiam
> > Konrad Banachowicz
> >
> > _______________________________________________
> > 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
>
--00504502c5f69b8f0a048fdcede1
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<div>Ken,</div>
<div>=A0</div>
<div>The paper you pointed to was using Box Turtle and found that performan=
ce of ROS wss pretty good compared to (what appears to be very optimised) L=
CM.</div>
<div>Do you think C-turtle got any improvements in this area?</div>
<div><font size=3D"2" face=3D"NimbusRomNo9L-Regu"><font size=3D"2" face=3D"=
NimbusRomNo9L-Regu">
<p align=3D"left">From paper:</p>
<p align=3D"left">>The ROS TCP transport achieves high throughput when t=
he maximum queue length (</p></font></font><font size=3D"2" face=3D"CMMI10"=
><font size=3D"2" face=3D"CMMI10">q</font></font><font size=3D"2" face=3D"N=
imbusRomNo9L-Regu"><font size=3D"2" face=3D"NimbusRomNo9L-Regu">) is set to=
infinity, but at the
<p align=3D"left">>expense of message latency. Various settings of </p><=
/font></font><font size=3D"2" face=3D"CMMI10"><font size=3D"2" face=3D"CMMI=
10">q </font></font><font size=3D"2" face=3D"NimbusRomNo9L-Regu"><font size=
=3D"2" face=3D"NimbusRomNo9L-Regu">provide an adjustable tradeoff between t=
hroughput and latency. </font></font><br>
<br></div>
<div class=3D"gmail_quote">On Thu, Sep 9, 2010 at 12:06 PM, Ken Conley <spa=
n dir=3D"ltr"><<a href=3D"mailto:kwc at willowgarage.com">kwc at willowgarage.=
com</a>></span> wrote:<br>
<blockquote style=3D"BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex=
; PADDING-LEFT: 1ex" class=3D"gmail_quote">Hi Konrad,<br><br>If you read th=
is paper from the authors of LCM, you will find that the<br>performance of =
ROS, LCM, and IPC are generally comparable (note: the<br>
article tests LCM's UDP implementation against ROS' TCP<br>implemen=
tation):<br><br><a href=3D"http://lcm.googlecode.com/files/2010-huang-olson=
-moore-lcm-iros.pdf" target=3D"_blank">http://lcm.googlecode.com/files/2010=
-huang-olson-moore-lcm-iros.pdf</a><br>
<br>Comparing any middleware to "raw TCP" is generally difficult =
to come<br>to conclusions, especially without including exact information o=
n how<br>your test was conducted. With any middleware, there is the overhea=
d of<br>
(un)marshaling the data into individual messages. =A0The size and<br>compos=
ition of these messages is a significant factor in any<br>performance numbe=
rs that result.<br><br>- Ken<br>
<div>
<div></div>
<div class=3D"h5"><br>On Thu, Sep 9, 2010 at 11:48 AM, Konrad Banachowicz &=
lt;<a href=3D"mailto:konradb3 at gmail.com">konradb3 at gmail.com</a>> wrote:<=
br>> Dear all,<br>> I recently done some testing on ROS communication=
performence.<br>
> There are the reesults :<br>> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 throughput [MB/s]=A0=A0=A0=A0 time =
[s]=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data [MB]<br>> ROS=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 7.25906=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 4.827058=A0=A0=A0=A0=A0 35.0399<br>> raw TCP=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 56.8430=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0 8.387205=A0=A0=A0=A0=A0 476.75466<br>
> POSIX MQ=A0=A0=A0=A0=A0 124.36626=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0 3.834136=A0=A0=A0=A0=A0 476.837158<br>><br>> That sho=
ws grate overhead of ROS communication.<br>> I looked on code, I found t=
hat the communication code is very complicated<br>> and contains many lo=
cks and queues. It's also integrate interprocess and<br>
> intraprocess communication. This with all callback stuff make whole<br=
>> communication overcomplicated.<br>><br>> I think this show seri=
ous problem with design of whole network stack in ROS.<br>><br>> I wi=
ll do some more testing.<br>
><br>> Pozdrawiam<br>> Konrad Banachowicz<br>><br></div></div>&=
gt; _______________________________________________<br>> ros-users maili=
ng list<br>> <a href=3D"mailto:ros-users at code.ros.org">ros-users at code.ro=
s.org</a><br>
> <a href=3D"https://code.ros.org/mailman/listinfo/ros-users" target=3D"=
_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>><br>>=
<br>_______________________________________________<br>ros-users mailing li=
st<br>
<a href=3D"mailto:ros-users at code.ros.org">ros-users at code.ros.org</a><br><a =
href=3D"https://code.ros.org/mailman/listinfo/ros-users" target=3D"_blank">=
https://code.ros.org/mailman/listinfo/ros-users</a><br></blockquote></div><=
br>
--00504502c5f69b8f0a048fdcede1--
More information about the ros-users
mailing list