Questions about experimental Spice compositor rebase
Yury Shvedov
shved at lvk.cs.msu.su
Tue Mar 22 06:58:17 UTC 2016
Hi, Fabio.
Unfortunately, I haven't time for this at all.
On 03/21/2016 12:59 AM, Fabio Fantoni wrote:
> I unfortunately had short time also this weekend.
> I tried to search a more efficient way to limit fps send to spice
> (instead of adding another buffer like xspice) and probably I found
> something about increase delay with "wl_event_source_timer_update", I
> tried to increased delay set to time_start in
> spice_output_start_repaint_loop function but the fps are still up near
> 1000.
> I checked in rdp compositor and seems that delay is in
> rdp_output_repaint instead of rdp_output_start_repaint_loop:
> "wl_event_source_timer_update(output->finish_frame_timer, 16);"
> I suppose that now in spice compositor there a delay only at the loop
> starts and/or "b->core->timer_start (output->wakeup_timer, 1);" in
> "on_wakeup" (if is this the 1 ms delay will explain the actual fps
> near to 1000)
The reason of such behavior is next. The weston always sends to spice
renderer the damage equivalent to full screen. It always thinks that
screen updates fully and on each tick. Adding
pixman_region32_subtract(&ec->primary_plane.damage,
&ec->primary_plane.damage, damage);
to the end of repaint function will resolve this issue, but also there
no output to spice client. And now I don't know why.
> Can someone tell me if my assumptions are right and if right what is
> the better way to add a delay, using it for limit fps and make it
> settable (for example max fps minimum to 10, maximum to 100 and
> default to 30) without negative effects please?
>
> I also tried to enable a weston debug to understand something faster
> and use it as help in some fast tests, I tried with a fast google
> search founding only WAYLAND_DEBUG=1 but seems that weston debug
> output is partial or missed, is there another way?
> I also found a "#define DEBUG 2" in compositor-spice-conf.h, this I
> suppose should force weston debug level using spice compositor (with
> COMPOSITOR_SPICE_CONF_H) but I did a grep without finding something
> using it, can someone help me to understand please?
> is the file compositor-spice-conf.h needed or can be removed? (seem
> used only for change debug and set spice compositor version but with a
> grep version seems unused and I suppose if will be needed can be
> setted always and in compositor-spice.c instead)
This is another piece of crap, left from my old code. I think, it can be
removed in case the success build.
>
> For any developer reading this thread for the first time, here the
> spice compositor repository: https://github.com/ein-shved/compositor-spice
> And here latest patch to make faster see the spice compositor
> additions/changes rebased on recently weston upstream:
> https://github.com/Fantu/compositor-spice/commit/3a75bb84da4650dd186f3f025c3640a65600bc6d
> - https://github.com/Fantu/compositor-spice/commits/rebase/spice-master
>
>
>
> Thanks for any reply and sorry for my bad english.
>
I will let you know then I learn or do something new.
--
Kind Regards,
Yury Shvedov
More information about the wayland-devel
mailing list