<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<br>
<div class="moz-cite-prefix">Il 10/03/2016 22:58, Yury Shvedov ha
scritto:<br>
</div>
<blockquote cite="mid:56E1EDEF.4020908@lvk.cs.msu.su" type="cite">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<br>
<div class="moz-cite-prefix">On 03/10/2016 06:04 PM, Fabio Fantoni
wrote:<br>
</div>
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite">
<meta content="text/html; charset=utf-8"
http-equiv="Content-Type">
<span id="result_box" class="" lang="en"><span class="hps">In
recent</span> <span class="hps">years</span> <span
class="hps">have</span> <span class="hps">done too little</span>
<span class="hps">programming and my</span><span class="hps">
memory is</span> <span class="hps">bad</span> <span
class="hps">lately.</span></span><br>
</blockquote>
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite"> About
the performance problem I remember something like a big problem
also in xspice that seems improved a lot with deferred fps:<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://lists.freedesktop.org/archives/spice-devel/2012-August/010276.html">https://lists.freedesktop.org/archives/spice-devel/2012-August/010276.html</a><br>
Can be useful for this project or with wayland/weston is
possible do something similar in a different and/or better way?<br>
</blockquote>
Of corse this is useful like all the stuff you found in the net
last time. But you chaotically offers me many different things
without any result except my "OK, I will take a look". Because I
have not much time to investigate it with you. You are looking for
the answers on your questions in the internet, while I have a
couple in the code. I see good way for the next steps and have
tried to explain them to you. I'm afraid that you didn't
understand them, so I'll try again at the bottom of this message.<br>
After that I suggest to decide and fix what we will do next.<br>
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite"> In
the weekend probably I'll look better the weston code but I not
know if I'll have needed freetime and <span id="result_box"
class="short_text" lang="en"><span class="hps">knowledge for
doing something useful for the mainly problem in a short
time.</span></span><br>
</blockquote>
Maybe you better to do something in what you sure? How about fps
tests like ones in your link?<br>
</blockquote>
<br>
I did a fast test with screen-share for see if it can works also
with other compositor instead rdp but was failed and I not found
nothing in weston log about.<br>
I tried to see if was possible have weston working local normal with
drm (3d and good performance) and additionally add spice session and
after check if was possible and better add a "deferred fps" in
screen-share to limit the screen data that spice-compositor must
elaborate.<br>
I take a fast look also to qemu and xspice code trying to understand
the initial improvement to do about image processing but seems that
qemu do operation with vm qxl drivers and xspice similar copied by
it and using qxl driver.<br>
I <span id="result_box" class="short_text" lang="en"><span
class="hps">I do not know</span> <span class="hps">if</span> <span
class="hps">this is possible in other better way with weston (</span></span><span
id="result_box" class="short_text" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps">I have no</span>
<span class="hps">knowledge to understand</span> <span
class="hps">if it is</span> <span class="hps">something
like</span> <span class="hps">what you mean</span> <span
class="hps">about</span> <span class="hps">making a</span>
<span class="hps">spice_renderer</span></span>).<br>
</span></span><span id="result_box" class="" lang="en"><span
class="hps">Maybe tomorrow</span> <span class="hps">I will have</span>
<span class="hps">a few more hours</span> <span class="hps">of
time</span> <span class="hps">and do not know</span> <span
class="hps">whether to try</span> <span class="hps">anyway</span>
<span class="hps">to</span> <span class="hps">add</span> <span
class="hps">deferred</span> <span class="hps">fps</span> <span
class="hps">quickly from</span> <span class="hps">xspice or
looking something about weston things you write below.<br>
<br>
</span></span><br>
<blockquote cite="mid:56E1EDEF.4020908@lvk.cs.msu.su" type="cite">
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite"> I
started to do small things fast and easy for doing something in
short time and start to watch something about weston and this
project code<br>
Things done I think/hope is still something useful because make
possible do some fast tests (I think useful for a project in
development), remote use (lan or wan) that I think is the main
goal of this project, auth (password) is needed for at least an
essential security (mainly for wan test without vpn), image
compression to make it usable on <1gbps network <span
id="result_box" class="short_text" lang="en"><span class="hps">and
not</span> <span class="hps">throttle the</span> <span
class="hps">network</span></span>, and additional wan
compressions to make it usable on wan connections (if are not
too bad) based on my spice experience.<br>
</blockquote>
There much more ways to decrease the network usage and increase
fps except compression.<br>
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite"> I
used/tried many remote access softwares, mainly for virtual
machine but not only, spice is a very good one, with high
quality but <span id="result_box" class="" lang="en"><span
class="hps">with</span> <span class="hps">efficiency</span><span
class="hps">/</span><span class="hps">latency issues</span>
<span class="hps">visible</span> <span class="hps">in most</span>
recent use <span class="hps">cases.<br>
I'm trying to help this project because seems the better
quality and full open source project I found to reach one of
my </span></span><span class="gt-baf-back gt-baf-hl">purpose:
remote access and remote assistance on linux physical machine;
one missed or bad thing on actual linux machines and one
blocking step for windows->linux migration in many cases.
There is also xspice project in </span><span
class="gt-baf-back gt-baf-hl"><span id="result_box"
class="short_text" lang="en"><span class="hps">a more
advanced state but is based on xorg that is old, </span></span></span><span
class="gt-baf-back gt-baf-hl"><span id="result_box"
class="short_text" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps">with
less</span> <span class="hps">potential and</span> <span
class="hps">I suppose it is</span> <span class="hps">a
bad</span> <span class="hps">long-term</span> <span
class="hps">choice.<br>
</span></span></span></span></span></blockquote>
I'm appreciate your help and interest (the windows to linux
migration is really good point!) and I hope one day this project
became something we wand to see.<br>
<blockquote cite="mid:56E18CF1.7060002@m2r.biz" type="cite"><span
class="gt-baf-back gt-baf-hl"><span id="result_box"
class="short_text" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps"> </span></span></span></span>Another
thing is that 3d hw acceration is </span><span
class="gt-baf-back gt-baf-hl"><span id="result_box"
class="short_text" lang="en"><span class="hps">increasingly
necessary and in future will be </span></span>essential
for any use (also basis) on any device (including virtual
machine). Trying to implement the better solution as possible
to have 3d hw support and improve spice </span><span
id="result_box" class="short_text" lang="en"><span class="hps">efficiency
and latency seem more easy and fast here before instead of
doing in virtual machine or I'm wrong?<br>
</span></span></blockquote>
I'm afraid I didn't catch last sentence. What doing in virtual
machine?<br>
<br>
Returning to our main topic. How do I suppose to increase fps and
decrease network usage?<br>
The main idea is to decrease the amount of image data sended via
network. For example, we have an application window moving on the
desktop background. The bad way is to compose the whole desktop
image on each step on the server and send it to client. But the
better way is to send to client 2 images once and tell him to
change position of one of them when it is needed. I think this
example is obvious for you and you should know that spice can
perfectly handle such tasks (moving images remotely and much
more). This is the first aim I want to achieve: to cache the
per-application surface on the client side, and left the building
of final desktop image to it. <br>
This can be done by creating the spice_renderer and using it
instead of pixman_renderer for distributed painting.<br>
<br>
Another thing I want to do first is to understand, what does the
rdp-compositor do before sending the image data? The learning how
dose rdp_output_repaint and other functions works will help us to
find another one already passed way to optimisation.<br>
<br>
What do you think? Do you have another suggestions about the way
of this spice-compositor developing?<br>
</blockquote>
<br>
<span id="result_box" class="" lang="en"><span class="hps">I'm
having</span> <span class="hps">difficulty</span> <span
class="hps">to understand</span> <span class="hps">at least the
basics</span> <span class="hps">of</span> <span class="hps">what
is need</span><span class="hps"></span>ed <span class="hps">in
a short time</span><span>, for sure</span> <span class="hps">you
know</span> <span class="hps">much more.</span><br>
<span class="hps">Maybe</span> <span class="hps">about</span> <span
class="hps">tips on what to do</span> <span class="hps">can</span>
<span class="hps">be helpful</span> <span class="hps">to post</span>
<span class="hps">the current</span> <span class="hps">draft of
the</span> <span class="hps">patch</span> <span class="hps">as
an RFC</span> <span class="hps atn">(</span><span>request for
comments</span><span>)</span> <span class="hps">on</span> <span
class="hps">wayland</span><span class="atn">-</span><span
class="">devel</span> <span class="hps">and spice</span><span
class="atn">-</span><span>devel</span> <span class="hps">and</span>
<span class="hps">probably</span> <span class="hps">some</span> <span
class="hps">expert</span> <span class="hps">developers</span> <span
class="hps">about</span> <span class="hps">them</span> <span
class="hps">can</span> <span class="hps">fastly</span> <span
class="hps">give</span> <span class="hps">some</span> <span
class="hps">advices.<br>
I did the same with other things </span></span><span
id="result_box" class="" lang="en"><span class="hps">and they gave
me</span> <span class="hps">useful information to</span> <span
class="hps">make fast</span> <span class="hps">patches</span> <span
class="hps">I needed</span> <span class="hps">analyzing</span>
<span class="hps">a few specific</span> <span class="hps">things</span>
<span class="hps">instead of</span> <span class="hps">read</span><span
class="hps">/</span><span class="hps">understand</span> <span
class="hps">all the code</span> <span class="hps">of</span> <span
class="hps">large pieces. Probably also with this can be useful
to understand something useful I can do </span></span><span
id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="short_text" lang="en"><span class="hps">the
first</span> <span class="hps">weekends instead spent all
time to learn, but if learn many things before is really
needed I'll try to do it. </span></span></span></span><span
id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="short_text" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps">It
seems that</span> <span class="hps">unfortunately</span>
<span class="hps">I'm no longer</span> <span class="hps">quick
to</span> <span class="hps">learn/</span><span
class="hps">understand</span> <span class="hps">as I
did</span> <span class="hps">years ago (</span></span></span></span></span></span><span
id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="short_text" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="" lang="en"><span
class="hps">years ago</span> <span class="hps">unfortunately</span></span>,
however,</span> <span class="hps">I wasted</span> <span
class="hps">thousands of</span> <span class="hps">hours</span>
<span class="hps">with</span> <span class="hps">unnecessary</span>
<span class="hps">proprietary projects instead</span></span>)</span></span></span></span></span></span>
:(<span id="result_box" class="" lang="en"><span class="hps"><span
id="result_box" class="short_text" lang="en"><span class="hps"><br>
<br>
Thanks for any reply and sorry for my bad english.<br>
<br>
</span></span></span></span>
<blockquote cite="mid:56E1EDEF.4020908@lvk.cs.msu.su" type="cite"> <br>
<pre class="moz-signature" cols="72">Kind regards
Yury Shvedov</pre>
</blockquote>
<br>
</body>
</html>