Jetson TX1-bad Ethernet speed issue

Hi everyone!
I was trying to simply play the video stream on Jetson TX1 which is displayed locally using VLC player from the local PC. When playing the stream on Jetson the video is full of artifacts. Specially, when the streamed video is in HD resolution-it is a real mess!
Ethernet interface is running on 1000 Mb/s, and WiFi adapter is disabled. Also, when trying with PC everything looks fine. The video is without artifacts. I am guessing the problem is in Ethernet adapter of Jetson TX1, because apparently some packets are lost which results in artifacts.

Can you tuning the network stack buffer sizes?

sysctl -w net.core.rmem_max=33554432
sysctl -w net.core.wmem_max=33554432
sysctl -w net.core.rmem_default=33554432
sysctl -w net.core.wmem_default=33554432

In addition to the net.core variables above, you also might want to tune net.ipv4.tcp_rmem and net.ipv4.tcp_wmem.

Also, can you increase the MTU of the ethernet adapter? You can set it in /etc/network/interfaces, similar to this page:

Regarding the video codec aspect, what gstreamer pipeline are you using? Have you increased the buffer in VLC (I remember having to play around with buffer settings in VLC before).

Also if you haven’t yet maximized the governor clocks, might be worth running this script as sudo:

Thanks for answer!
I’ll try it and feedback to you. As soon as I reinstall JetPack 2.2, AGAIN. After automatic update Jetson freezes and not responding. I reported that problem too, but no useful answers. This is third time I need to reinstall JetPack in order to get on track.

Generally speaking, I typically don’t recommend using apt-get upgrade or automatic updates, as they can automatically install conflicting packages.
It might have pulled an Xorg X11 update from the Ubuntu repositories overrode the existing NVIDIA L4T display driver and froze the screen, see here:

@dusty_nv is updating something you dont recommend even after applying the purposed Xorg X11 fixed in the link you provided? If so, are there any plans to address this?

It’s possible but I personally don’t - you might encounter situations where you need to apt-mark hold additional packages due to conflicts that arise. Updates are verified against L4T and pulled into the next release.

You may find it useful to know that even if an update breaks something (fairly rare, the GL stuff had the same issue in the R19.x series, but was fixed in R21.x), it is easily fixed.

To detect if something was broken (other than kernel modules), run this:

sha1sum -c /etc/nv_tegra_release

Within your driver package on your host are subdirectories “kernel” and “nv_tegra”. Other than modules, all of those checked files are available in “nv_tegra/nvidia_drivers.tbz2”. Placing that file on your Jetson at “/” allows unpacking it as root and restoring all of those files. For example, copy this file to somewhere on the Jetson, move it to “/” (be sure to use sudo), and then unpack it:

cd /
sudo -s
bunzip2 < nvidia_drivers.tbz2 | tar xv

I’ve never heard of kernel modules getting overwritten (and the sha1sum command does not check these), but you could do the same thing for modules in “/lib/modules/3.10.96-tegra” by copying “kernel/kernel_supplements.tbz2” to “/” of the Jetson.

HINT: You can copy nvidia_drivers.tbz2 there ahead of time if you’re worried.

@dusty_nv, I tried everything you suggested as a solution. I got only a little improvement, barely noticeable. Still has artifacts.When you say buffering in VLC do you mean about Stream output muxer caching? it is set to 1500. I was changing it but with no improvements.
I also don’t use gstreamer pipeline. I’m using VLC to stream from PC, and SMPlayer on Jetson to play the stream.