Some of the most expensive operations are color conversion and "SRCCOPY"
bitblts, because they involve copying large pixel buffers.

Color conversion - including in xfreerdp and wfreerdp - is currently not
hardware accelerated at all. For this part of libfreerdpgdi, we could start
adapting all of our UIs to use the same color conversion code, without much
of a difference in performance since none of them is hardware accelerated.

There are multiple possibilities for making the rendering faster:

1) parallelize operations that can be parallelized
2) offload part of the rendering to the GPU using OpenGL/OpenCL

@otavio: I know your concerns regarding performance, and I share them with
you. Don't worry, we won't ditch the current code for something less
performant, unless we actually make it fast enough to match the current
performance or beat it. Since there is a lot of interest into having a
highly optimized cross-platform GDI rendering library for FreeRDP, I think
we'll get to that point eventually. IIRC you had problems recently with
xfreerdp not being fast enough on a system that did not have GPU
acceleration. Did you try something besides adapting xfreerdp to xcb, which
would reduce the overhead associated with X11? Also, if the system did not
have hardware acceleration, doesn't that also mean that in this case
xfreerdp doesn't benefit from it and ends up doing software rendering?

On Wed, Mar 23, 2011 at 10:02 PM, Vic Lee <[email protected]> wrote:

> I had some attempt to implement the drawing on cairo, which is
> cross-platform and hardware-accelerated. But unfortunately I cannot
> finish it because cairo does not support any kind of bitwise operation,
> which is crucial in RDP drawing (ROP2, ROP3). Maybe EGL is also an option?
>
> On 03/24/2011 05:36 AM, Otavio Salvador wrote:
> > On an ideal World we would use all it for all clients and just port
> > the GDI to the backend (Win32, WinCE, X11, OpenGL, Wayland, whatever).
> > We just need to be careful and focus on doing code fast and optimized.
> > This is where performance will be critical.
> >
>
>
>
>
> ------------------------------------------------------------------------------
> Enable your software for Intel(R) Active Management Technology to meet the
> growing manageability and security demands of your customers. Businesses
> are taking advantage of Intel(R) vPro (TM) technology - will your software
> be a part of the solution? Download the Intel(R) Manageability Checker
> today! http://p.sf.net/sfu/intel-dev2devmar
> _______________________________________________
> Freerdp-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/freerdp-devel
>
------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software 
be a part of the solution? Download the Intel(R) Manageability Checker 
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Freerdp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freerdp-devel

Reply via email to