If you’re not sure what QuartzGL is, it is very roughly a feature in Leopard (and “Quartz Extreme 2D” in Tiger) which uses GPU to draw OSX user interface – and is not enabled by default. The main reason is that enabling this feature on a OS-level results in various drawing inaccuracies and other instabilities. However, running this feature on an application basis can be beneficial.
This trick might well become obsolete with the introduction of Snow Leopard (and a properly modified Omnigraffle probably), but until 10.6 finally comes around, it will help. I’ve been using this trick for quite a while for running various applications on a Powerbook G4 and now on a MacBook Pro, and speed boosts are by far most noticeable with Omnigraffle.
There are quite a few how-to’s out there on how to enable QuartzGL. Enabling it in Terminal might work for some, it never worked for me. What worked was playing around with a program called Quartz Debug. To install Quartz Debug, I usually had to install the whole Xcode Developer Tools package – you can download it from the Apple Developer Connection site (http://developer.apple.com/technology/Xcode.html), a registration is required and it’s free. You might try and download Quartz Debug alone from somewhere else, without having to download XCode. I haven’t done specifically that but I think it should work as well.
Once Xcode is installed, you can find Quartz Debug in “Developer > Applications > Performance Tools” folder.
The convenient thing about Quartz Debug is that it makes easy to enable QuartzGL only for specific applications, without having to enable QGL system-wide. The basic procedure to use with a specific application (say Omnigraffle) is to:
1. enable QuartzGL in Quartz Debug BEFORE launching Omnigraffle.
dock icon will show that QGL is enabled:
2. launch Omnigraffle.
3. when Omnigraffle is up and running, disable Quartz GL in Quartz Debug.
4. kill (force quit) Quartz Debug (Alt-Cmd-Esc, select the app and force-quit it)
Open any of your existing works in Omnigraffle, grab and move a stack of elements around and see if you experience how much faster Omnigraffle is. Compare performance with QuartzGL disabled and than enabled and please report about your experiences.
Even after applying this trick, Omnigraffle might slow down to its “normal” mode after a while. Having only a few applications open and freeing up some RAM might help, as well as restarting Omnigraffle (again with QuartzGL enabled, disable after launch).
Having QGL enabled works well and stable with some other applications (Preview), while with others you might experience some drawing artefacts and even crashes (Photoshop, even Safari). On certain systems (particularly with older graphics cards) even kernel panics with QuartzGL aren’t uncommon, so use this feature how you find appropriate. At the moment I am using a MacBook Pro, machine model 1,1 with 2 GB RAM, Radeon X1600 w/256 Mb VRAM and Omnigraffle works blazingly fast in QGL mode without any crashes.
Hope this tip is helpful.
Oh and by the way: today is Omnigraffle’s 8th birthday! Happy BD!




