Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

poor performance of the PC104 ATOM in network transmission #494

Closed
reafrancesco opened this issue Jun 27, 2017 · 18 comments
Closed

poor performance of the PC104 ATOM in network transmission #494

reafrancesco opened this issue Jun 27, 2017 · 18 comments

Comments

@reafrancesco
Copy link

Please fill in the following two sections and then remove any comment and/or remark become unnecessary:

Description of the failure

Together with @barbalberto I have noticed an high variability of the transmission rate of packets from a pc104 atom (talking head) and the rest of standard iCub network.
We focused on "yarpdev --device test_grabber --width 320 --height 240" as reference test.
Whereas the test_grabber prints out the following messages
Read [152] frames in 5[s], average period 33.11[ms], min 33.25[ms], max 33.44[ms]
any yarpview (running on any other machine in the iCub network), once connected to the /grabber (in both tcp and udp) reports framerate that spans from ~3fps to ~30fps.

Also with IPERF we noticed that the transmission rate drops down to 500Mbit/s when the IPERF client runs on the PC104.

@allPC104ATOMusers: can you check if you have the same poor performance with IPERF

We tried with a point to point connection and we change also the eth cable.
The pc104 atom is demanding less than 10% in this condition (measured with top).

More importantly if we boot the PC104 atom with an ubuntu 16.04 the transmission rate is normal and in both the direction (from and to PC104 atom) restores back to 900Mbit/s (desired throughput)/

This issue is related to robotology/yarp#1232

@randaz81
Copy link
Member

More importantly if we boot the PC104 atom with an Ubuntu 16.04 the transmission rate is normal

Which other OS are you using when the problem occurs?

@barbalberto
Copy link
Collaborator

@randaz81 The images for PC104 are based on Debian (see http://wiki.icub.org/wiki/The_Linux_on_the_pc104). Ubuntu is used on laptop side

@reafrancesco
Copy link
Author

reafrancesco commented Jun 29, 2017

I can add it is realtime version of Debian in fact what "uname" shows is that we now have kernel 3.2.0-4+icub.2-rt-amd64 on the PC104 atom.
The kernel 3.2.0 currently on the PC104 atom is very old and goes back to a version of January 2012.
I don`t know how many commits Debian has backported but for sure the driver rtl8196 has changed a lot!
(https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/drivers/net/ethernet/realtek/r8169.c)

Concerning this I would kindly like to ask @mbrunettini whether we can prepare a new pendrive with never kernels.

@EliseiFrederic
Copy link
Collaborator

Hi,
Is there an easy fix-solution for this issue ? Can we patch the driver on the USB key,
or should we wait for a new release and go trough the full update process ?
Thanks in advance,
Frédéric & the Grenoble team (with lost video and audio packets on the talking head)

@mbrunettini
Copy link
Member

mbrunettini commented Sep 26, 2017

A new release of iCub Live image (based on latest debian stable) has been created and it fixes this issue.
It is currently in testing and will be released soon.
There is no easy-fix but using the new kernel packed with the new release, I am afraid.

@EliseiFrederic
Copy link
Collaborator

Hi,
No news for the new image ? We got criticisms in our last HCII paper submission that we should have 30 fps with our iCub... that we did not reach in our stats because of this bug !
Cheers, Frédéric for the Grenoble team

@mbrunettini
Copy link
Member

mbrunettini commented Dec 4, 2017 via email

@mbrunettini
Copy link
Member

Here you can find the new release.
Let us know about

@EliseiFrederic
Copy link
Collaborator

EliseiFrederic commented Dec 5, 2017 via email

@mbrunettini
Copy link
Member

Correct, the instructions are the same as last release

@EliseiFrederic
Copy link
Collaborator

EliseiFrederic commented Dec 6, 2017 via email

@mbrunettini
Copy link
Member

Why do you need to modify the network configuration?
It is standard and all iCub PC104 are on 10.0.0.2

@mbrunettini mbrunettini self-assigned this Dec 6, 2017
@gsaponaro
Copy link

Why do you need to modify the network configuration?
It is standard and all iCub PC104 are on 10.0.0.2

Well, in Lisbon we have to customize the network configuration[*] and other files on the PC104 USB pen drive. So, we would also benefit from having the instructions that @EliseiFrederic was mentioning.

[*] the reason why we must customize the network is that 10.0.0.2 is assigned to the DNS server of our institute, and we want to access that server + the external internet from PC104. Usually we have proceeded by customizing some files (e.g., /etc/network/interfaces, /etc/fstab, /etc/hosts). Related issue robotology/community#136

@mbrunettini
Copy link
Member

mbrunettini commented Dec 6, 2017

The persistence file can be mounted as a partition to read files from. It is a standard live persistence file, the modified files are hosted in the rw folder.
Writing files directly to the persistence file (or partition) has never been tested here.
The live USB can be used in any other computer (it is a modified Debian live system, but it will take a while to boot up) where you can modify your network configuration file /etc/network/interfaces.

A note : usually the iCub is used with a laptop (or a server) that acts as gateway and segregate the iCub subnet from the rest of the world; this helps network bandwith performances.

@EliseiFrederic
Copy link
Collaborator

EliseiFrederic commented Dec 6, 2017 via email

@EliseiFrederic
Copy link
Collaborator

EliseiFrederic commented Dec 6, 2017 via email

@EliseiFrederic
Copy link
Collaborator

EliseiFrederic commented Dec 7, 2017 via email

@julijenv
Copy link
Collaborator

can we close this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants