[X2Go-User] Jerky Video Fixed

brian mullan bmullan.mail at gmail.com
Mon Apr 6 14:15:45 CEST 2015


Robert I thought I'd get back to you on the low latency kernel discussion.

Over the weekend I created 2 "cloud" servers.   One on AWS EC2 and one on
Digital Ocean.   On both of them I install x2goserver
and the Ubuntu low-latency kernel.

At home I used a spare esata drive and installed the final beta of Ubuntu
15.04 onto it with the low latency kernel also.

My first test was with the x2go client on my normal home Ubuntu 14.04
machine.

All tests used:
ubuntu 15.04 final beta on server side with low latency kernel installed
(uname -r showed it as the active kernel)
firefox v37 release
same youtube video (I used Santana's "Smooth" video)
x2goclient "connection" speed set to LAN (I also tried WAN with little
observable difference)
my home desktop is 8 core, 32GB ram, 6TB sata-6 sw RAID
my home desktop internet connection is 20Meg

Test 1
use x2goclient to log into AWS EC2 "cloud" x2goserver
start firefox
goto youtube and watch a video
client side did NOT have the low latency kernel

Result of test 1
video still  somewhat choppy

Test 2
use x2goclient to log into Digital Ocean ubuntu x2goserver
start firefox
goto youtube and watch a video
client side did NOT have the low latency kernel

Result of test 2
video still  somewhat choppy

Test 3
use x2goclient to log into AWS EC2 "cloud" x2goserver
start firefox
goto youtube and watch a video
client side DID have the low latency kernel

Result of test 3
video still  somewhat choppy

Test 4
use x2goclient to log into Digital Ocean ubuntu x2goserver
start firefox
goto youtube and watch a video
client side DID have the low latency kernel

Result of test 4
video still  somewhat choppy

Test 5
Booted Windows 7 on my home machine, installed x2goclient and firefox v37
use x2goclient to log into AWS EC2 "cloud" x2goserver
start firefox
goto youtube and watch a video
client side being Windows obviously did NOT have the low latency kernel

Result of test 5
video still  somewhat choppy

Test 6
Repeated Test 5 (windows 7) but used DIgital Ocean ubuntu server again
w/low latency kernel installed

Result of test 6
video still somewhat choppy

Test 7
Tried all of the above but using Youtube HTML5 video instead of Flash based
video

Result of test 7
same as before ... somewhat choppy

My own results *were not able to replicate* your success with low latency
kernel using this "remote" desktop x2go testing to cloud based x2goservers.
So I suspect that the difference may be the WAN and/or cloud introduced
latencies but that would take alot more work and probably some wireshark
sniffing of packets to know for sure.

Finally, I remembered one "good practice" I had always been using and that
was to install  libjpeg-turbo on all my server's and my home PC clients
(except the Win7 of course).

Reference:  http://libjpeg-turbo.virtualgl.org/

The reason as you see when reading the above website is that libjpeg-turbo
is 2-4 times faster coding/decoding jpeg than the default libjpeg in most
linux distro's.

Retested here does show "some" improvement in video but still not as good
as directly watching that same youtube using Firefox on my local desktop.

note:  another benefit of using libjpeg-turbo is that besides being 2-4
times faster than default libjpeg it also uses less-cpu which for the
server-side can be helpful when multiple x2go sessions are active or
         more than one x2go user is logged into that server

Anyway,  I had hoped for a different outcome but unless I can think of
something else I may/may not have done this approach didn't help much in my
use-case of remote desktop to cloud serves.

Of course using x2go everything but streaming video from those cloud
servers worked great.

If you can think of anything else let me know and I'd be glad to try to see
if I can get diff results for the streaming video.

Brian




On Thu, Apr 2, 2015 at 12:17 PM, brian mullan <bmullan.mail at gmail.com>
wrote:

> Robert
>
> Thanks for all of your information on the low latency kernel.   I've used
> x2go for several years and one use-case I've had was to install the x2go
> server onto either Amazon's AWS EC2 or on Digital Ocean to support remote
> desktops for K-12 schools that I do volunteer work for.
>
> Clients have always been a mix of Win7, Mac or Ubuntu linux.
>
> Really the only issue has been video streaming which for K-12 is important
> because alot of learning content online consists of video.
>
> In the past I've tried using larger "compute" instances (8-16 core) in
> those clouds thinking perhaps the video encoding/transmission load was the
> cause but that only improved things marginally.
>
> I tried higher bandwidth links... same marginal improvement.
>
> It didn't matter what client they used (mac, win7 or linux) the video
> content viewing results was more or less the same for each.
> That's why I am thinking maybe only the server-side "may" be required to
> have the low latency kernel??
>
> I got them all so the streaming video (say youtube) wasn't awful but it
> wasn't the same as watching the video on a dedicated PC instead of thru the
> x2go virtual desktop.
>
> But i guess I never suspected the linux kernel introducing delay/jitter to
> the point of being the cause.
>
> It may take a while until I can get to it but I'll try and set up a test
> with one of those clouds and have the x2go server-side ubuntu utilize the
> low latency kernel you described and see what happens with each client.
>
> This would be great if that turns out to be the source of streaming video
> jerkiness for cloud based remote desktops.   I'll post something to the
> x2go alias when I find out what happens.
>
> thanks again.
>
> Brian
>
>
> On Wed, Apr 1, 2015 at 5:55 PM, Robert Dinse <nanook at eskimo.com> wrote:
>
>>
>>      In Ubuntu, they build low latency kernels and make them available as
>> part of the distribution but not installed by default.
>>
>>      On my workstation, which is an old Mac-Pro 1,1 with quad Xeon CPU's
>> and
>> 4 GB of RAM, I had Ubunto 14.04 installed then upgraded to 14.10.  I had
>> Wine installed and under Wine I ran WinAmp to play music.  WinAmp
>> sometimes
>> skipped, and also when I upgraded to 14.10 which came with a 3.16.x
>> kernel,
>> I had issues with the Nvidia drivers for my old 7300 GT card.
>>
>>      To solve those issues I ended up building a 3.18.9 kernel and built
>> it
>> with kernel preemption enabled, which is how Ubuntu builds their low
>> latency
>> kernels.  That solved both my issues with Nvidia drivers and with WinAmp
>> stuttering but it did not fix the issues of video being jerky over X2Go,
>> and
>> I had pretty much written that off to my Comcast connection anyway.
>>
>>      But given how much smoother things went on my workstation, I decided
>> to
>> try installing the low latency kernel on the server and then tried
>> watching
>> some Youtube videos that had previously been jerky (audio okay but video
>> jerky) and found that it made the video smooth.
>>
>>      So my guess is you probably need it on both, but since I haven't
>> tried
>> it on the server only I can't say for sure.
>>
>>      The kernel on the server isn't custom built, it's one of the low
>> latency
>> kernels provided by Ubuntu (I used synaptic package manager to select and
>> install, rebooted, then removed the old).
>>
>>      On the Mac I don't know.  I had so much problems with X2Go on my
>> Mac, even after installing the XQuartz server, that is one of the reasons I
>> installed Ubuntu on it and stopped using MacOS.  Got tired of the spinning
>> beach ball, got tired of having zero games available.  I liked the Dock but
>> that's about it.  Mac's approach of just throw enough hardware at it and it
>> will be acceptable works if you have infinite money, I don't.
>>
>>      With respect to Windows, I only have an old antique XP machine that
>> I use
>> for some games, don't really know how it would work with video over X2Go
>> so
>> can't answer that one.
>>
>> -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
>> -_-_-_-_-_-_-_-_-_-
>>  Eskimo North Linux Friendly Internet Access, Shell Accounts, and Hosting.
>>    Knowledgeable human assistance, not telephone trees or script readers.
>>  See our web site: http://www.eskimo.com/ (206) 812-0051 or (800)
>> 246-6874.
>>
>> On Wed, 1 Apr 2015, brian mullan wrote:
>>
>>  Date: Wed, 1 Apr 2015 17:36:06 -0400
>>> From: brian mullan <bmullan.mail at gmail.com>
>>> To: Robert Dinse <nanook at eskimo.com>
>>> Cc: x2go-user at lists.x2go.org
>>> Subject: Re: [X2Go-User] Jerky Video Fixed
>>>
>>>
>>> Robert this is very interesting.. mainly because I wasn't aware there was
>>> such a thing as a low latency kernel.  Guess with linux you are always
>>> learning.  However, I have an experimental question.  Is it just the
>>> kernel
>>> on the video transmitting side, the client/receiver side or both that the
>>> low latency kernel has this impact?  Also, if the video server side is
>>> linux with a low latency kernel then what would a client running x2go on
>>> a
>>> mac or a windows 7 machine experience since neither utilize a linux
>>> kernel
>>> ?
>>>   Thanks for sharing as I had always figured it was a latency problem but
>>> I assumed it was 100% due to the network itself.
>>> Bria
>>> On Apr 1, 2015 5:23 PM, "Robert Dinse" <nanook at eskimo.com> wrote:
>>>
>>>
>>>>      I hope I've done this in a way that doesn't steal anyone else's
>>>> thread.
>>>>
>>>>      A while back someone posted that they had somewhat jerky video
>>>> through
>>>> x2go, and I posted that if I watched someone on youtube over an x2go
>>>> connection, with a 20 mbit/s cable connection, on a Ubuntu 14.10 client
>>>> accessing a Ubuntu 14.04.2 LTS server, I also had some jerkiness to the
>>>> video.
>>>>
>>>>      I have installed low latency kernels on both machines now and that
>>>> eliminated the jerkiness.  I can now watch a youtube video on a remote
>>>> machine
>>>> and have it display smoothly even with the highest quality setting set.
>>>>
>>>>      Just posting this so if others are experiencing this problem this
>>>> may
>>>> be
>>>> a viable fix for them.
>>>>
>>>> -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
>>>> -_-_-_-_-_-_-_-_-_-
>>>>  Eskimo North Linux Friendly Internet Access, Shell Accounts, and
>>>> Hosting.
>>>>    Knowledgeable human assistance, not telephone trees or script
>>>> readers.
>>>>  See our web site: http://www.eskimo.com/ (206) 812-0051 or (800)
>>>> 246-6874
>>>> .
>>>> _______________________________________________
>>>> x2go-user mailing list
>>>> x2go-user at lists.x2go.org
>>>> http://lists.x2go.org/listinfo/x2go-user
>>>>
>>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x2go.org/pipermail/x2go-user/attachments/20150406/a1bb5a56/attachment.html>


More information about the x2go-user mailing list