Good day, Marc-Andre.

Did you try tcmalloc from Google?

As I know - it is specially optimized for small object allocation and to be
efficient in multi-threaded programs.
http://goog-perftools.sourceforge.net/doc/tcmalloc.html

Maybe it will be more simple and general method to boost memory allocation
operations for FreeRDP project totally?

Best regards,
Roman Barabanov



On Tue, Jun 7, 2011 at 02:57, Marc-André Moreau
<marcandre.mor...@gmail.com>wrote:

> And boom, here's a memory pool for RemoteFX tiles :P (my last commit)
>
> It can play youtube videos when not in fullscreen mode very smoothly, I
> don't recall if that was the case prior to optimizations though. In all
> cases, it does feel much better. There are still others places that need
> optimizations.
>
>
> On Mon, Jun 6, 2011 at 6:16 PM, Marc-André Moreau <
> marcandre.mor...@gmail.com> wrote:
>
>> Hi all,
>>
>> I started refactoring and optimizing the RemoteFX decoder.
>> https://github.com/awakecoding/FreeRDP
>>
>> <https://github.com/awakecoding/FreeRDP>I changed various data types so
>> that they match the ones defined in MS-RDPRFX. I have spotted different
>> areas of the code which can definitely be improved on. Basically, there is a
>> lot of dynamic memory allocation for large buffers multiple times per
>> second, which obviously kills performance. In rfx_decode_rgb, I spotted
>> three buffers of 4096 * 4 bytes (Y, Cb and Cr) which could safely be re-used
>> if one was allocated in the RFX_CONTEXT structure. rfx_decode_rgb still
>> allocates a 4096 * 4 byte buffer for the resulting RGB pixel buffer every
>> single time. Reusing this buffer is going to need extra work though, since
>> one such buffer is needed per tile sent by the server. I'm thinking of
>> implementing an "tile pool" in which allocated tiles can be put once used
>> and re-used later on instead of always allocating new tiles. This should
>> give an extra performance boost.
>>
>>
>> On Mon, Jun 6, 2011 at 12:09 PM, Marc-André Moreau <
>> marcandre.mor...@gmail.com> wrote:
>>
>>> Does anybody know if there is a way to force the server into sending
>>> RemoteFX messages only, without any GDI messages? I'd be interested in
>>> experimenting with ways of saving the RemoteFX stream to a file for later
>>> use, which would be much easier to do than recording GDI messages. One could
>>> likely implement a transcoder from RemoteFX to other codecs like VP8 or
>>> H.264.
>>>
>>>
>>> On Sun, Jun 5, 2011 at 10:16 PM, Vic Lee <ll...@163.com> wrote:
>>>
>>>> Hi Marc,
>>>>
>>>> Thanks for your correction, I should say most, not all. :)
>>>>
>>>> Vic
>>>>
>>>>
>>>> On 06/06/2011 01:47 AM, Marc-André Moreau wrote:
>>>>
>>>>> Hi Vic,
>>>>>
>>>>> I would have to confirm, but apparently *some* (very few) GDI messages
>>>>> still get sent when RemoteFX is in use. libfreerdp-gdi supports both,
>>>>> but from my testing the server kept sending some GDI messages even with
>>>>> RemoteFX.
>>>>>
>>>>>
>>>>
>>>
>>
>
>
> ------------------------------------------------------------------------------
> EditLive Enterprise is the world's most technically advanced content
> authoring tool. Experience the power of Track Changes, Inline Image
> Editing and ensure content is compliant with Accessibility Checking.
> http://p.sf.net/sfu/ephox-dev2dev
> _______________________________________________
> Freerdp-devel mailing list
> Freerdp-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freerdp-devel
>
>
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Freerdp-devel mailing list
Freerdp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freerdp-devel

Reply via email to