• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: [OT] Quartz Extreme in developer previews?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OT] Quartz Extreme in developer previews?


  • Subject: Re: [OT] Quartz Extreme in developer previews?
  • From: Allan Odgaard <email@hidden>
  • Date: Sat, 13 Jul 2002 19:17:34 +0200

On lxrdag, juli 13, 2002, at 06:36 , Pierre-Olivier Latour wrote:

One suggested that Quartz Extreme would store off screen bitmaps in the
graphics memory, so that the blitter could be use for all these trivial
clear, copy and compose functions that make up most layer operations --
which should make the speed of Quartz closer to the 2.1 GB/s that my
GeForce claims to offer in bandwidth.
That's a common misconception about Quartz Extreme (btw Apple has some
responsibility in it by not saying clearly what QE is).

Do not forget that all Quartz operations are done in software by the CPU
(bezier drawing, font drawing, etc...). Quartz Extreme _only_ helps in
window compositing (according to Apple's own definition), which will be done
by the graphic card instead of the CPU as in today's OS X.

Hopefully there will also be hardware support for sub-window operations. For example compositing an image to a point, scrolling a rectangle in a view with NSCopyBits etc. -- all these functions are done by the CPU today (atleast it seems that way), and similar for the developer preview I tested :-(

Therefore, QE won't speed up quartz drawing inside the window, nor help
window resizing and so on.

Take window resizing: an 800x600 window mostly contain a filled background, either just white or a repeated bitmap. If the CPU needs to erase the entire rectangle each time (the window change by a few pixels) and copy it to the graphics card then it takes about 0.02 seconds for each redraw. So definetely window resizing will benefit enourmously from proper hardware usage.

The main difference is that dragging a window onscreen consumes up to 80%
processing power today (even on my 800MP). With QE, the graphic card will do
the computations (thanks to window content being available as textures), and
it will consume extremely few processing power. You can also have
transparency in windows or aliasing for Aqua effects without any penalty.

Unfortuntaely I cannot confirm that hardware is actually being used, as I can get similar speeds to what I see on Jaguar, by just using the CPU.

FYI: copy, clear and copy with scaling operations from RAM to VRAM are
hardware accelerated in the current OS X versions. Otherwise it would be
slow as hell.

It is slow as hell (compared to the technology beneath).

FYI if I do a memcpy() directly from RAM to VRAM then I can copy 190 MB/s. If I instead redraw the contents of an NSView at 800x600 simply using NSFillRect with a white colour and add a timer to repeat this 60 times pr. second (which amounts to erasing 109 MB/s) then my view actually only gets redrawn ~40 times pr. second (and the number increase/decrease if I change the size of my view).
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.
  • Follow-Ups:
    • Re: [OT] Quartz Extreme in developer previews?
      • From: Pierre-Olivier Latour <email@hidden>
References: 
 >Re: [OT] Quartz Extreme in developer previews? (From: Pierre-Olivier Latour <email@hidden>)

  • Prev by Date: Re: how to hide/show/bring to front apps with Cocoa?
  • Next by Date: Re: Carbon API with carbon
  • Previous by thread: Re: [OT] Quartz Extreme in developer previews?
  • Next by thread: Re: [OT] Quartz Extreme in developer previews?
  • Index(es):
    • Date
    • Thread