I don't know enough about their cloud servers to know what else to look
at, you're giving your low latency kernel CPU cycles from a cloud, how choppy
is the scheduling of CPU cycles to your kernel fro the cloud?  Your kernel
can't schedual CPU cycles during times it doesn't have 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.

On Mon, 6 Apr 2015, brian mullan wrote:

Date: Mon, 6 Apr 2015 08:15:45 -0400
From: brian mullan <[email protected]>
To: Robert Dinse <[email protected]>
Cc: "[email protected]" <[email protected]>
Subject: Re: [X2Go-User] Jerky Video Fixed

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 <[email protected]>
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 <[email protected]> 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 <[email protected]>
To: Robert Dinse <[email protected]>
Cc: [email protected]
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" <[email protected]> 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
[email protected]
http://lists.x2go.org/listinfo/x2go-user





_______________________________________________
x2go-user mailing list
[email protected]
http://lists.x2go.org/listinfo/x2go-user

Reply via email to