gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cario and shmget problems


From: David Chisnall
Subject: Re: cario and shmget problems
Date: Sat, 10 Jul 2010 09:23:09 +0100

Hi Fred,

The biggest performance bottleneck at the moment, I suspect, is NSImage.  This 
holds the image in the process's memory and attempts to share it with the X 
server.

Because NSImages are mutable objects, the process retains ownership over them 
and Cairo is unable to take advantage of acceleration provided by the X server 
when doing the compositing.  With Opal, the CGImage (which NSImage will use for 
drawing) is immutable.  It is copied once to the X server, then (ideally) 
copied into VRAM by the X server.  Every time it is drawn, Cairo can take 
advantage of hardware compositing.  

This reduces the client-server copying overhead and allows the server to 
actually make use of that huge blob of transistors optimised for compositing 
that any computer made after about 1996 has.  

David


reply via email to

[Prev in Thread] Current Thread [Next in Thread]