15.1 Video Adapter Characteristics
The following sections describe the important characteristics of
video adapters.
15.1.1 2D Versus 3D
The first graphics accelerators were 2D models,
designed to provide hardware acceleration for the common display
tasks (drawing and moving windows, scaling fonts, and so on) when
running standard business applications under Windows. 2D accelerators
essentially treat your display as a flat, two-dimensional workspace.
Although one window may overlay another window, the top or foreground
window always has focus.
Conversely, 3D accelerators treat your display as though it had
depth. For example, when you play a 3D computer game, an on-screen
character may walk in front of a table. The video adapter must
determine the relative positions of the character and the table as
seen from the viewer's position and display that
portion of the character that is in front of the table rather than
the portion of the table that should be concealed by the character.
3D video cards also support a variety of supplemental functions to
enhance realism, for example, adding textures to the surface of
concrete or adding reflections to a pool of standing water. Adding
these minor but visually important enhancements consumes a great deal
of memory and processor power, so high-performance 3D video adapters
are relatively expensive devices, with typical street prices of $125
to $300 or more.
Note that 3D
performance is merely a matter of degree. That is, even an elderly
2D-only adapter can be used to play 3D games, but because it does not
incorporate 3D acceleration features in hardware, the main system
CPU itself must do all of the
calculations that would otherwise be done by a 3D adapter. The result
is very high CPU utilization (with the associated system
sluggishness) and jerky or poorly rendered 3D video without the
modeling nuances provided in hardware by the 3D accelerator.
In fact, pure 2D accelerators haven't been
manufactured for years. In the early '90s, two
distinct types of video adapters were available: moderately priced
($50 to $200) 2D accelerators intended for mainstream use with
standard Windows programs, and very expensive ($500 to $2,000) 3D
adapters intended for niche markets like animation and video
production. As 3D applications (particularly games) became more
common, old-line 2D manufacturers like Matrox and ATI incorporated a
limited subset of 3D functions in their mainstream adapters. There it
stood until a few years ago, when upstart companies like 3dfx and
nVIDIA caught the old-line makers napping by
releasing graphics accelerators with a full range of 3D
functionality.
That led to the current situation, where 3D performance is the only
aspect of a graphics card that interests most people. Reviews talk of
little but how video cards compare in various 3D benchmarks.
That's unfortunate, because in reality 3D
performance is unimportant to most users. In fact, unless you are a
serious gamer, 3D performance should probably be the last
consideration when choosing a video card. Such factors as 2D display
quality and availability of stable drivers are actually much more
important for most users.
All video cards and embedded video
chipsets currently available provide at least minimal 3D support. The
important thing to remember is this: just as there is not much
absolute performance difference between a $75 processor and a $300
processor, neither is there much real difference between a $75 video
card and a $300 one. Benchmarks aside, the $75 card does everything
that 99% of users are likely to need. Yes, there are differences,
just as there are between processors, but unless you push your
hardware to the limit you're not likely to notice
much difference in day-to-day use.
15.1.2 Components
A video adapter comprises the following
components:
- Graphics processor
-
Rather than depending on the main system CPU to create each video
frame, a graphics accelerator contains a graphics processor, which is
optimized to perform in hardware low-level video functions like
transferring bitmaps, doing color and pattern fills, scaling fonts,
sizing and positioning windows, and drawing lines, polygons, and
other graphics primitives. An accelerated video adapter also requires
much less data to be transferred between the system bus and the video
adapter. For example, to draw a circle with a frame grabber, the
system CPU must create a bitmap of that circle and transfer it to the
frame grabber. Conversely, given only the center and radius of the
circle, a graphics accelerator can render the circle directly.
Early accelerators were optimized for 2D graphics operations, which
are still most important when running standard business and personal
software such as word processors and web browsers. More recent
accelerators, including all current models, provide 3D acceleration,
which is primarily useful for playing 3D graphics-intensive games.
Unfortunately, some recent 3D adapters, particularly
nVIDIA models, are so heavily optimized for 3D
that they provide mediocre 2D performance. Our venerable
Matrox Millennium II adapters, for
example, are useless for playing 3D games, but provide better 2D
video quality than any current 3D accelerator.
- Video memory
-
Video adapters use memory for
several purposes. A portion of video memory called the
frame buffer stores the image as it is
constructed by the graphics processor and before it is sent to the
monitor. Available memory not occupied by the frame buffer caches
fonts, icons, and other graphic elements to improve video
performance. Some video adapters also allocate memory not being used
by the main frame buffer as a second frame buffer, allowing the next
frame to be created in the background while the current frame is
being displayed. The most important characteristics of video memory
are its size, type, and speed. Video adapters use one of the
following memory types:
- DRAM (Dynamic Random Access Memory)
-
First- and some second-generation graphics accelerators used standard
DRAM, which was not ideal for the
purpose. DRAM is no longer used in mainstream video adapters because
it is so slow, mainly because it is
single-ported, which means that it does not allow
data to be read and written simultaneously.
- EDO DRAM (Extended Data Out DRAM)
-
EDO provides higher bandwidth than DRAM,
can run at higher speeds, and manages read/write access more
efficiently. EDO is single-ported, typically operates with 50 to 60
ns access times, is typically 64 bits wide, and yields overall
bandwidth of 400 MB/s. EDO was commonly used in video adapters before
the advent of SDRAM and the various specialized types of video memory
described below, and continued to be used until mid-2000 in some of
the least expensive video adapters. Nowadays, inexpensive PCI and AGP
video adapters use SDRAM. About the only place EDO is used is in
obsolete ISA and VLB adapters, which are becoming hard to find.
- VRAM (Video RAM)
-
A
special
type of DRAM, VRAM is used only in video adapters and is designed to
overcome the limitations of the single-ported arrangement used by
DRAM and EDO. VRAM is
dual-ported—which allows the next frame to
be written while the last frame is being read—operates at 50 to
60 ns access times, is typically 64 bits wide, and yields overall
bandwidth of 400 MB/s. Because it requires less frequent refreshing
than DRAM or EDO, it is much faster, and correspondingly more
expensive. VRAM was commonly used in mid- to high-end video adapters
through about 1997, but has been superseded by SDRAM and SGRAM,
described below.
- WRAM (Windows RAM)
-
WRAM,
first introduced by Matrox with their Millennium series of video
adapters, is an enhanced version of VRAM that is somewhat less
expensive to produce and provides about 20% higher performance than
VRAM. Like VRAM, WRAM has been superseded by SDRAM and SGRAM.
- SDRAM (Synchronous DRAM)
-
A step up from EDO, SDRAM runs the memory and graphics
processor on a common clock reference, allowing faster access times
and higher throughput. SDRAM is single-ported, operates at 8 to 15 ns
access times, is typically 64 bits wide, and yields overall bandwidth
of 800 MB/s at 100 MHz. SDRAM is used in most current low-end and
midrange video adapters. SDRAM is now sometimes described as
Single Data Rate SDRAM (SDR-SDRAM) to
differentiate it from DDR-SDRAM. Any video adapter you buy today
should use either SDRAM or the superior DDR-SDRAM, described below.
- SGRAM (Synchronous Graphics RAM)
-
SGRAM is an enhanced form of SDRAM, used only on video
adapters, that supports write-per-bit and block writes, both of which
improve performance over SDRAM when used with graphics accelerators
that explicitly support SGRAM. SGRAM video memory is single-ported,
operates at 6 to 10 ns access times, is typically 64 bits wide, and
yields overall bandwidth of 800 MB/s. SGRAM was formerly used on
midrange and high-end video adapters, but has now largely been
replaced by DDR-SDRAM, described below.
- DDR-SDRAM (Double Data Rate SDRAM)
-
DDR-SDRAM differs from standard Single Data Rate SDRAM (SDR-SDRAM) in
that it transfers data on both the rising and falling edge of the
clock cycle, doubling transfer rate to 1,600 MB/s at 100 MHz or 2100+
MB/s at 133 MHz. DDR-SDRAM was first used in expensive video
adapters, but has since trickled down to midrange adapters. Because
DDR-SDRAM costs very little more than SDR-SDRAM, we expect that
throughout 2002 an increasing number of low-end video adapters will
begin shipping with DDR-SDRAM.
- RAMDAC (Random Access Memory Digital-to-Analog Converter)
-
The RAMDAC examines
video memory many times per second, using a look-up table to
translate the digital values it finds in memory to the analog
voltages that the monitor requires to display the corresponding
colors. The RAMDAC contains three digital-to-analog converters
(DACs), one each for the red, green, and blue signals that the
monitor uses to display the full spectrum that it supports. The
architecture and speed of the RAMDAC (along with the graphics
processor itself) determine the combinations of resolutions, color
depths, and refresh rates that the video adapter supports. All other
things being equal, an adapter with a faster RAMDAC outperforms an
adapter with a slower RAMDAC. Some video adapters are sold in two
versions that differ only in the speeds of the RAMDAC and in the type
and amount of memory installed. The faster versions, often described
as "Ultra" or
"Max," usually sell at a
substantial premium, run hotter, and provide no real benefit for most
users.
- Drivers
-
Drivers
translate the display data generated by an application or operating
system into the specific instructions needed by the graphics
processor to create the image that will be displayed on the monitor.
The driver decides how to present data to the graphics processor so
as to optimize the hardware acceleration functions available on the
graphics processor. That means that a mediocre graphics processor
with an excellent driver may outperform an excellent graphics
processor with a mediocre driver, so the availability of robust,
well-optimized drivers for whatever operating system you run is a
crucial factor in choosing a video adapter. Drivers are often
optimized for particular combinations of resolution and color depth,
so it's often worthwhile to experiment with
different settings.
In the past, video drivers had to be written for a specific
application running on a specific operating system using a specific
video adapter. If you wanted to run UltraCAD 5.1 on a FastPix
SuperVGA adapter with a 2.03 BIOS under ABC-DOS 3.3, you had to have
a driver written specifically for that combination of hardware and
software. The flood of 3D software titles and 3D accelerators made
that situation untenable. The solution was to use an intermediate
hardware abstraction layer (HAL) to isolate the graphics processor
from the operating system and applications, and to develop
standardized APIs to communicate with that HAL. Because applications
need to understand only how to communicate with one or a few APIs
rather than with every graphics processor available, they can run on
any video adapter that supports an API that they can communicate
with. Two 3D APIs are dominant in the PC environment:
- OpenGL
-
OpenGL was originally
developed by Silicon Graphics Inc. (SGI) as a general-purpose 3D API.
OpenGL found its first niche in high-end CAD systems running on Unix
X-terminals, and was later implemented on PC workstations running CAD
and other 3D graphics-intensive environments. With the release of a
Windows version in 1996, support for OpenGL began to migrate downward
to mainstream 3D applications, including games. OpenGL is widely
supported by software developers because it offers better low-level
control over 3D graphics operations and was perceived as being an
easier API to write to than the competing Microsoft standard. OpenGL
support can be implemented in two ways: Mini Client
Drivers (MCDs) are relatively easy to write, but provide
limited functionality. Installable Client
Drivers (ICDs) are much more difficult to write, but
provide additional functionality. The importance of OpenGL,
particularly to the gaming community, is waning as Microsoft DirectX
increasingly dominates 3D applications, but OpenGL remains important
for professional graphics applications.
- Direct3D (D3D)
-
D3D is the 3D
acceleration part of DirectX, Microsoft's umbrella
multimedia standard, which also includes DirectDraw (2D
acceleration), DirectSound (audio), DirectInput (support for
joysticks and similar input devices), and DirectPlay (Internet
gaming). Versions through 5.0 were slow, buggy, and feature-poor when
compared to OpenGL and proprietary 3D APIs. Microsoft refined and
tuned D3D by reducing dependence on the main system CPU and
incorporating OpenGL features. With version 6.0, D3D could finally
compete on a reasonably equal basis with OpenGL and proprietary APIs,
although it was still somewhat slower and less feature-laden.
Although 3D software manufacturers had been burned by D3D 5.0, they
recognized the improvements in 6.0, and most incorporated D3D 6.0
support immediately. The convergence between D3D and OpenGL continued
with versions 7.0 and 8.0, and applications that support only D3D are
no longer at a significant disadvantage relative to those that
support OpenGL and/or proprietary APIs. D3D and OpenGL may eventually
merge. Fahrenheit, a joint initiative between Microsoft and SGI, was
originally intended to result in a unified standard, but has since
become moribund. Some elements of Fahrenheit are already in place,
however, and many enhancements planned for Fahrenheit have been
incorporated in later releases of D3D.
For now, any 3D video card you choose should support the latest
release of D3D, which is used by most current 3D games and other 3D
applications. Many 3D applications, including some games, also
support OpenGL for its higher performance and additional
functionality, so ideally the card you choose should also have an
OpenGL ICD. Support for the proprietary 3dfx Glide API, which
dominated 3D gaming through about 1999, is no longer important
because nearly all current games support D3D and/or OpenGL and
because 3dfx has been subsumed by nVIDIA.
15.1.3 Interface
Early video adapters, including the first
generation of graphics accelerators, used the ISA bus, which soon
proved inadequate to carry the high volume of video data required by
graphics-based operating systems and applications. VESA
Local Bus
(VLB) adapters, shipped with many 486 systems and a few early Pentium
systems, greatly improved throughput. ISA and VLB video adapters are
obsolete but remain in limited distribution, although they are now
difficult to find and use video chipsets that are several generations
out of date. Any system so old that it accepts only an ISA or VLB
video adapter is too old to be worth upgrading. Current video
adapters use one of the following interfaces, both shown in Figure 15-1.
- PCI
-
The PCI bus is 32 bits wide and runs at 33.3
MHz, providing peak throughput of 133 MB/s. The fact that a PCI video
card shares the bus with other PCI devices means that heavy transfers
of video data reduce the bandwidth available to other PCI
peripherals, such as hard disk controllers and network cards. This
concern is still largely theoretical because PCI bus saturation is
very rare with current systems and software.
- AGP (Accelerated Graphics Port)
-
Intel's concern about PCI throughput limitations
and the increasing amount of data that new generations of 3D video
adapters would demand led it to introduce AGP. Although AGP supports
2D operations, it provides no real benefit over PCI in 2D. As the
name implies, AGP is a port rather than a bus, which means that it
connects only two devices. AGP provides a direct unshared channel
between the AGP video adapter and the system chipset, which allows
the CPU to transfer data to the AGP card without the 133 MB/s
limitation of the PCI bus. AGP runs at 66 MHz and standard 1X AGP
transfers 32 bits per clock cycle, for total peak base throughput of
264 MB/s. AGP X2 mode, called 2X AGP, transfers data on both rising
and falling edges of the clock cycle to yield peak throughput of 528
MB/s. 4X AGP, introduced with the AGP 2.0 specification, doubles
throughput again to just over 1 GB/s by transferring data four times
per clock cycle. There is an AGP 8X standard currently in development
that will double throughput again, but AGP 8X is unlikely to become a
factor for the next year or more.
The AGP bus has two other throughput advantages relative to PCI.
First, AGP supports pipelining, which allows it to sustain throughput
at 80% of theoretical, and second, AGP uses sideband
addressing, a process that allows queuing up to 32
commands and allows data and commands to be sent simultaneously. One
highly touted benefit of AGP is Direct Memory
Execute (DIME), which
allows the AGP adapter to use system memory as though it were locally
installed video memory. DIME is implemented with a device called a
Graphics Aperture Remapping
Table (GART), which can
claim small, widely distributed areas of main memory and present them
to the adapter as a large, contiguous area of virtual
"local" video memory. In theory,
DIME allows an AGP adapter with limited local memory to store large
texture bitmaps and other graphic elements in main memory. In
practice, DIME is of little real benefit, because most high-end video
adapters (PCI or AGP) are equipped with enough memory (16 MB to 128
MB) to store textures locally. Also, although DIME is faster than
accessing main memory across the PCI bus, DIME is still slower than
accessing local memory on the video card, particularly if that local
memory is DDR-SDRAM memory, which high-performance video cards use.
In short, for now at least, AGP remains a solution in search of a
problem, particular for those who use primarily 2D applications.
Windows NT users have no reason to prefer AGP, because NT treats AGP
cards as standard PCI cards, as do early releases of Windows 95.
Windows 95 OSR2 or higher, Windows 98/98SE/Me, Windows 2000/XP, and
of course Linux have operating system support for AGP.
AGP is
the best choice if your motherboard has an AGP slot. AGP adapters
generally sell for no more than equivalent PCI adapters, and often
less. Also, as the sales volume of PCI cards increasingly declines,
manufacturers concentrate their efforts on AGP cards, which means the
latest video chipsets and other features are available only on AGP
versions.
1X AGP cards are no longer sold and should be avoided, not because
they are slower than 2X or 4X AGP cards, but because they use
obsolete graphics processors and have functional and feature
limitations. In fact, many 1X AGP cards were just PCI cards with an
AGP interface substituted for PCI, and did not support AGP features.
Although 2X AGP is more than fast enough to keep up with current
systems, most current cards are produced only in 4X AGP versions. So,
although there's nothing wrong with 4X AGP, neither
does it make sense to pay extra for 4X AGP if an otherwise suitable
2X AGP card is available. You may have little choice but to buy AGP,
however, and 4X AGP at that. Video card makers have largely abandoned
PCI in favor of AGP and 2X AGP in favor of 4X AGP for their latest
adapters.
Embedded video adapters may be either PCI or AGP. If you buy a
motherboard with embedded video, keep in mind that you may one day
want to upgrade the video in that system. Doing that requires both
that you can disable embedded video, which is not possible on all
motherboards, and that you have an available slot for the new video
card. Choose a motherboard with embedded AGP video circuitry that
also contains an available AGP slot. Ideally, that AGP slot should be
4X, although 2X is acceptable. Note that some motherboards with
embedded AGP video have no AGP slot. These can be upgraded only by
installing a PCI video adapter. That wasn't a
problem a year or two ago, when competent PCI video adapters were
still widely available, but it is a problem now that many
manufacturers have discontinued or cut back their PCI lines.
15.1.3.1 AGP Interfaces and Signaling Voltages
AGP adapters and interfaces operate at two voltages, 3.3V and 1.5V.
1X and 2X AGP adapters are available in 3.3V and 1.5V versions. 4X
AGP adapters are 1.5V only. Motherboards may have one of five types
of AGP interfaces, shown in the left column of Table 15-1, which summarizes the compatibility issues of
AGP interfaces and adapters.
Table 15-1. AGP compatibility by adapter type and interface type
1.5V 2X-capable
|
|
|
2X only
|
|
|
1.5V 4X-capable
|
|
|
|
|
|
3.3V 2X-capable
|
|
|
|
|
|
Universal 2X-capable
|
|
|
2X only
|
|
|
Universal 4X-capable
|
|
|
|
|
|
When you are installing an AGP adapter, remember the following points:
1.5V AGP interfaces support only 1X, 2X, or 4X 1.5V AGP adapters, and
are physically keyed to prevent installing a 3.3V AGP adapter.
3.3V AGP interfaces support only 1X or 2X 3.3V AGP adapters, and are
physically keyed to prevent installing a 1.5V AGP adapter.
Universal AGP interfaces support 1.5V and 3.3V AGP adapters
interchangeably. The motherboard detects the voltage required by the
installed card according to the status of AGP pin A2 (TYPEDET#). 3.3V
AGP adapters leave pin A2 open. 1.5V AGP adapters short pin A2 to
ground.
A 1.5V 2X-capable AGP slot or a Universal 2X-capable AGP slot can
accept a 4X AGP adapter, but runs the adapter at 2X.
|
Heed this warning. With modern PCs, there are very
few cases in which installing a non-defective PC peripheral that
physically fits can damage the peripheral or the system. One big
exception is motherboards that use the Intel 845 or 850 chipset or
the nVIDIA nFORCE chipset.
Due to improper design and keying, a few AGP adapters that are
actually 3.3V devices are keyed such that they can fit a 1.5V slot.
Furthermore, they handle the A2 line incorrectly. The upshot is that
installing one of these cards in an Intel 845, Intel 850, or
nVIDIA nFORCE motherboard
may destroy the AGP adapter and/or motherboard. The following AGP
adapters have been reported to exhibit this problem:
some nVIDIA Riva
TNT2 adapters
all nVIDIA Vanta and
Vanta LT adapters
all SiS 6326 and SiS 305
adapters
all S3 Savage4
adapters earlier than revision 3.0
all 3dfx Voodoo3, Voodoo4, and Voodoo5
adapters
some nVIDIA GeForce2 GTS and GeForce2 Pro
adapters
Note that this list may
not be complete, and that the documentation that came with the
adapter may have been printed before the problem came to light.
Before you install any older AGP adapter in one of these
motherboards, verify on the card and motherboard
manufacturers' web sites that the card is compatible
with the motherboard.
|
|
15.1.3.2 AGP Pro
The AGP 2.0 Specification introduced 4X mode, but had some
deficiencies with regard to workstation graphics cards. In
particular, AGP 2.0 allows a maximum of 25W of power, which is
inadequate for high-end professional graphics cards. If AGP was to be
usable for professional graphics adapters, Intel needed to make
provision for the additional needs of such cards. To do so, Intel
extended the AGP 2.0 Specification by adding the AGP Pro Addendum,
which defines the following features:
- AGP Pro connector
-
The AGP Pro connector expands the standard 132-pin AGP connector to
180 pins, by extending both ends of the standard AGP slot. A standard
AGP 1X, 2X, or 4X card functions in an AGP Pro slot, but the converse
is not true.
- Increased power
-
A standard AGP 2.0 slot provides at most 25W of 3.3/5V power. An AGP
Pro slot provides additional 3.3V power, adds 12V power, and can
provide up to 110W of total power.
- Multiple card/multiple slot support
-
AGP Pro permits using multiple cards in multiple slots. An AGP Pro
solution can use the AGP Pro slot alone, or the AGP Pro slot and one
or two adjacent PCI slots, which need only be standard 32-bit, 33
MHz, 133 MB/s PCI slots. Those adjacent slot positions can be used to
supply additional electrical power, PCI bus functionality, mechanical
support, or simply additional space. A 25W AGP Pro card may occupy
only the AGP Pro slot. A 50W AGP Pro card (or cards) may occupy the
AGP Pro slot and one PCI slot. A 110W AGP Pro card (or cards) may
occupy the AGP Pro slot and two PCI slots. AGP Pro defines two pins,
PRSNT1# and PRSNT2#, that are used to indicate the presence of an AGP
Pro card, its type, and how much power it requires. Table 15-2 lists how those pins are used.
Table 15-2. AGP Pro slot configuration
No connection
|
No connection
|
AGP Pro card not installed
|
Ground
|
No connection
|
50 W AGP Pro card installed
|
Ground
|
Ground
|
110 W AGP Pro card installed
|
No connection
|
Ground
|
Reserved
|
In addition to connection and power features, the AGP Pro Addendum
specifies mechanical and thermal design criteria. AGP Pro is closely
associated with the WTX workstation motherboard form factor intended
for professional workstations, but a few ATX motherboards are
available with AGP Pro support, most of which are targeted at serious
gamers. Most AGP Pro video cards are intended for professional
graphics, but some of the latest gaming video cards are or soon will
be shipping in AGP Pro versions because they require more than the
25W that standard AGP can provide.
15.1.4 Display Settings
The following display settings determine how much
information a video adapter and driver display and how often that
information is updated.
- Resolution
-
Resolution, also called
addressability, refers to the maximum number of
pixels that the video adapter can display, listed by vertical columns
and horizontal rows. For example, a standard VGA adapter can display
at most 640 columns by 480 rows of pixels, which is abbreviated as
640 x 480 resolution. Video cards do not support
continuously variable resolution, but instead provide standard
"prepackaged" combinations of
vertical and horizontal resolution, e.g., 1024 x 768.
Using higher resolution permits more information to be displayed.
Also, for any given size of an object on-screen, using higher
resolution allocates more pixels to that object, avoiding
"jaggies,"
"stair-stepping," and other video
artifacts that degrade image quality. Conversely, using too high a
resolution for the monitor size results in individual display
elements becoming too small to be readable. The best resolution to
use is determined by monitor size and quality, video adapter
capabilities, and personal factors like visual acuity.
- Color depth
-
A
pixel,
also called a pel or picture
element, is the smallest individually
addressable display element, and comprises three sub-units, one each
for red (R), green (G), and blue (B). Color
depth
refers to the number of discrete colors that can be displayed, and is
determined by the number of bits allocated to each primary color,
quantified as
bits-per-pixel (BPP). Standard VGA allocates
4BPP, which allows at most 16 (24) colors
to be displayed simultaneously from a total palette of 256 available
colors. Current video adapters support 256-color mode (8BPP); High
Color or 64K Color mode (16BPP, 65,536 colors, 5 bits each allocated
to Red and Blue, and 6 bits to Green); and True Color or 16.7 Million
Color mode (24BPP, 16,777,216 colors, 8 bits each allocated to R, G,
and B). Note that, although True Color requires only 8 bits each on
the Red, Green, and Blue channels (24 bits total), some adapters add
a fourth "alpha" channel, and
therefore require 32BPP. Although 256 colors are adequate for
standard business applications, displaying continuous-tone High Color
or True Color images with only 256 colors results in posterization
effects that reduce realism. Any recent graphics accelerator can run
True Color mode at common-used resolutions, and that is usually the
best choice.
- Refresh frequency
-
A video card displays the screen image as a series of images that is
replaced many times per second, even when the screen image is
unchanging (e.g., your desktop). As with movies or television, a
phenomenon known as persistence of vision allows the human brain to
recognize a rapid sequence of still images as continuous smooth
motion. In order for this phenomenon to occur, screen updates must
occur very frequently. The number of times per second that the video
card replaces the current screen image with a new image is called the
refresh frequency. The refresh frequency necessary to
provide a stable image varies with the individual, monitor size,
persistence of monitor phosphors, ambient lighting, the image being
displayed, and other factors, but is typically somewhere between 60
and 90 images per second. Setting refresh frequency too low results
in visible flicker. Setting it too high for any given combination of
monitor and video adapter may limit you to using a lower resolution
and/or color depth than you would prefer, so make sure that the
monitor and video adapter you buy support reasonable refresh rates
for the resolution and color depth you intend to run. We generally
use a refresh rate of 75 Hz or higher on 15" monitors running 800
x 600; 75 to 85 Hz on 17" monitors running 1024
x 768; and 85 Hz or higher on 19" and larger monitors
running 1280 x 1024 or higher. Most people find these
settings suitable for running typical office productivity
applications, web browsers, graphics packages, and so on. Note,
however, that some special applications, such as medical imaging, may
require very high refresh rates and accordingly expensive monitors.
Resolution and color depth settings together determine how much data
must be stored for each image, and therefore the amount of
video memory required. Refresh frequency
determines only how often the image is updated, and so has nothing to
do with the amount of video memory needed. Table 15-3 lists the amount of video memory required to
support various combinations of resolution and color depth in 2D
mode.
Table 15-3. Video memory required for standard resolution and color depth in 2D mode
640 X 480
|
8
|
256
|
|
|
|
|
640 X 480
|
16
|
64 K
|
|
|
|
|
640 X 480
|
24
|
16 M
|
|
|
|
|
640 X 480
|
32
|
16 M
|
|
|
|
|
800 X 600
|
8
|
256
|
|
|
|
|
800 X 600
|
16
|
64 K
|
|
|
|
|
800 X 600
|
24
|
16 M
|
|
|
|
|
800 X 600
|
32
|
16 M
|
|
|
|
|
1024 X 768
|
8
|
256
|
|
|
|
|
1024 X 768
|
16
|
64 K
|
|
|
|
|
1024 X 768
|
24
|
16 M
|
|
|
|
|
1024 X 768
|
32
|
16 M
|
|
|
|
|
1152 X 864
|
8
|
256
|
|
|
|
|
1152 X 864
|
16
|
64 K
|
|
|
|
|
1152 X 864
|
24
|
16 M
|
|
|
|
|
1152 X 864
|
32
|
16 M
|
|
|
|
|
1280 X 1024
|
8
|
256
|
|
|
|
|
1280 X 1024
|
16
|
64 K
|
|
|
|
|
1280 X 1024
|
24
|
16 M
|
|
|
|
|
1280 X 1024
|
32
|
16 M
|
|
|
|
|
1600 X 1200
|
8
|
256
|
|
|
|
|
1600 X 1200
|
16
|
64 K
|
|
|
|
|
1600 X 1200
|
24
|
16 M
|
|
|
|
|
1600 X 1200
|
32
|
16 M
|
|
|
|
|
15.1.5 Throughput
The overall throughput of a video adapter is constrained by the speed
and architecture of its RAMDAC and video memory, and the number of
bits that it processes per operation. The
throughput required at any given combination
of display settings is the product of four factors: resolution (how
many pixels per frame), color depth (how much data per pixel),
refresh rate (how many frames per second), and number of planes (one
for 2D modes, and typically three or four for 3D modes). When a video
adapter reaches its throughput limit, you can increase any of these
factors only by reducing one or more of the others.
For example, a video adapter may have a RAMDAC that can process at
most 225 million bytes/sec. Operating in 2D mode, that adapter
supports 1024 x 768 resolution at 24 bits/pixel (BPP) and
85 Hz refresh. With those settings, the video adapter processes (1024
x 76824BPP x 85 Hz=200,540,160 bytes/sec), well
within the RAMDAC limits. Increasing resolution to 1152 x
864 requires (1152 x 864 x 24BPP x
85 Hz = 253,808,640 bytes/sec), well beyond the capacity of this
RAMDAC. To run 1152 x 864, you can either: (a) continue
using 85 Hz refresh, but reduce the color depth from 24BPP to 16BPP
(1152 x 864 x 16BPP x 85 Hz =
169,205,760 bytes/sec), or (b) continue using 24BPP, but reduce the
refresh rate from 85 Hz to 75 Hz (1152 x 864 x
24BPP x 75 Hz = 223,948,800 bytes/sec). Similarly, when
the adapter runs in 3D mode, the requirement for three (or four)
planes forces lower resolutions, color depths, and/or refresh rates.
This RAMDAC, for example, is at its limit in 3D mode when running 800
x 600 resolution at 16BPP and 78 Hz (800 x 600
x 16BPP x 78 Hz x 3 planes =
224,640,000 bytes/sec). This is why, relative to 2D cards, 3D video
cards are equipped with a much faster RAMDAC (to process the
additional data) and much more memory (to store the additional planes
as well as supplementary information such as texturing data). In
practice, you'll never need to calculate these
numbers, because video drivers support only those combinations of
display settings that are within the ability of the video hardware.
Although conventional wisdom says increasing resolution and/or color
depth slows performance because more information must be processed
and transferred, this is not invariably true. Some video adapters run
faster at 1024 x 768 than at 800 x 600, for
example, or faster at 16.7 million colors than at 256 colors. Why?
Because the driver is optimized for the higher resolution or color
depth. Don't assume that increasing either
resolution or color depth will slow down your video. Test each usable
combination and pick the one that works for you.
|