It depends. Memory speed determines how fast you can
'read from' and 'write to' texture, depth or color buffers
in memory. Engine speed determines how quickly you can
execute the vertex and pixel shader instructions to calculate
pixel positions and colors. Our Radeon X1900 GT/XT cards
have a state-of-the-art processing engine. The ASIC is
identical on both the PC and Mac versions of the card.
You know I was recently on a leading CAD company's discussion
boards and there was talk about running their Windows-only
program on a Mac using Boot
Camp or Parallels.
Anyway, the discussion devolved into a Mac versus PC
comparison and people are really confused about what
Macs are physically-- hardware wise--now that they have
Intel chips. Some people think that they are just an
Apple logo on a PC box with beautiful industrial design.
just not so.
what is actually different about your graphics cards
for PCs versus Macs, especially now that Apple is based
on an Intel Architecture?
Great question. For a long time graphics cards
for Apple computers have had to be hardware specific
in part because Apple used different connectors. This
meant we had to have a physically different main board to
accommodate these different connectors.
So what is specific today on the hardware side for the cards
in the Mac Pros? They have industry standard connectors
Not a lot on the hardware side. But EFI is a big difference
ROM side. Apple's early adoption of this Intel standard
has also caused hardware vendors to create special boards
just for that.
So there's not much unique on the hardware side today?
EFI is also an Intel standard, should that mean that
when Microsoft adopts EFI with Windows Vista and post-Vista,
there will be even less
of a difference remaining on hardware uniqueness?
It is not clear when or if other PC vendors will adopt
EFI, which I
think stands for "extensible firmware infrastructure".
other PC graphics cards require a video BIOS, a different
firmware than EFI and different again from OpenFirmware,
required by the Power Mac G5 and other PowerPC based
distinction between the firmware, the control code typically
programmed into a ROM on what otherwise might be identical
hardware, determines the system compatibility and operating
characteristics of each individual graphics card. It
makes them unique from one another and unfortunately
prevents the individual cards from being interoperable
one type of system and another--for example from a Power
Mac G5 to a Mac Pro or from a Mac Pro to a typical Windows
Now what about the software side?
On the software side there is a really interesting story.
Apple's OS architecture has very different requirements.
Apple's OS X has been doing Vista-like
features since version 10.1. Mac OS X virtualizes VRAM.
Windows XP does
not. This has given Mac
applications unique advantages. I
remember talking with the Starry Night developers at
WWDC 2005. They were rendering the Earth with over 2
GB of texture data, on an ATI graphics card that had
only 256 MB VRAM. They
could do this because the OS managed paging the texture
data on and off the graphics card as needed in the kernel
without them having to worry about it. Up until Vista,
Microsoft Windows couldn't do that.
What does this mean in the bigger picture?
Well, Apple's been doing this since 2000. Apple realized
that they couldn't do Mac OS X with industry standard
PC drivers because those drivers were not written to
support the advanced features of Mac OS X's graphics
engine. Even though Quartz
not present in the first releases of OS X, Apple was laying
the groundwork for it.
So Mac OS X is based on OpenGL and advances in hardware
accelerated OpenGL have given the Mac unique graphics
capabilities. What is happening specifically with Quartz
and Quartz Extreme in Mac OS X? And what does
this mean in the bigger picture?
In Mac OS X under Quartz Extreme the CPU constructs the
picture in apps like Excel or Safari and renders it in
software to host memory (RAM), but that picture is then
treated as a 'texture' and drawn to the screen using
the hardware accelerator (GPU). Now in a usage model
Quartz 2D Extreme, Apple is moving every single piece
to the GPU. Now you are using the graphics hardware to
draw every single dot, every character, every line.
And how much faster is that?
It can be 2-200 times faster, depending on the operations.
average usage situations it might result in a more reasonable
boost. [For an excellent Ars
article go here.]
and OpenGL Development
Earlier we were talking about OpenGL and how Apple depends
on it for its advanced user interface in OS X. Where
is your work going with OpenGL and Apple?
ATI's work has historically been in three realms
for Apple. These
started with games, pro apps like CAD and 3D, and
then the OS itself in OS X. Now there is a fourth
Apple's own Pro apps!
What are the differences?
Well, games are full-screen OpenGL based programs that hog
all the available resources. They are very concerned
with efficiency, and their design cycle is short enough
that they tend to heavily use
the latest OpenGL fast paths. At the other end of the spectrum,
Pro apps may use a broad range
of OpenGL functionality, but they are typically not rewritten
so they usually do not rely on the latest OpenGL fast
paths. Many Pro apps only use hardware accelerated OpenGL
for preview mode, so there is less incentive for them
be on the bleeding edge of OpenGL features. So, games
and traditional Pro apps drive OpenGL in different ways.
Quartz Extreme Apple added the OS Window Server as an
OpenGL client, treating each window as a texture. Quartz
Extreme put pressure on the OpenGL drivers to optimize
code paths that games and Pro apps had never cared about,
and flushed out a whole class of bugs that games and
Pro apps had never encountered. Each of these steps led
the further evolution of the [GPU] drivers.
some ways, the use of OpenGL by Apple's own Pro apps,
like Motion, Shake, Aperture, Final
Cut Pro and also
Pages, Keynote, FrontRow, Quartz Composer, PhotoBooth,
etc have forced the biggest evolutionary
leap in the drivers. Apple's Pro apps stand apart because
those things are pushing the envelope of OpenGL features.
They are pushing the envelope and they are also a window
into OpenGL's future.
Sounds interesting. Keep going.
page: | 1 | 2 |
3 | 4 |