You are on page 1of 11

Vertex and Geometry Processing

Selection Capability for Microsoft


DirectX* 10
White Paper
For Intel® G45 Express Chipsets and Mobile Intel® GM45
Express Chipsets

November 2009

Document Number: 322931-001


INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR
IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT
AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY
WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL
PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY,
OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY
APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR
DEATH MAY OCCUR.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the
absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future
definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The
information here is subject to change without notice. Do not finalize a design with this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to
deviate from published specifications. Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
All products, platforms, dates, and figures specified are preliminary based on current expectations, and are subject to change
without notice. All dates specified are target dates, are provided for planning purposes only and are subject to change.
This document contains information on products in the design phase of development. Do not finalize a design with this
information. Revised information will be published when the product is available. Verify with your local sales office that you have
the latest datasheet before finalizing a design.
Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and other countries.
*Other names and brands may be claimed as the property of others.
Copyright © 2009, Intel Corporation. All rights reserved.

2 White Paper
Contents
1 Introduction .....................................................................................................5
1.1 Terminology ..........................................................................................5
1.2 Reference Documents .............................................................................5

2 Vertex and Geometry Processing Selection Capability .............................................6


2.1 Introduction ..........................................................................................6
2.2 Integrated Graphics Architecture ..............................................................6
2.3 Why Vertex and Geometry Processing Selection Capability? ..........................7
2.4 Driver Architecture .................................................................................7
2.5 Benefits of Vertex and Geometry Processing on Processor and Graphics
Engines.................................................................................................9
2.6 Summary ............................................................................................11

Figures
Figure 1. 3D and Media Kernels...........................................................................6
Figure 2. Vertex and Geometry Processing Architecture ..........................................8
Figure 3. Vertex and Geometry Processing Options in CUI.......................................9
Figure 4. Intel® G45 Express Chipset Performance - Using Processor Accelerated
Vertex and Geometry Processing with DirectX 10- based Applications ...............10
Figure 5. Intel® G45 Express Chipset Performance Benefits - Using Graphics-
Accelerated Vertex and Geometry Processing with DirectX 10-based Applications10

White Paper 3
Revision History

Revision Description Revision Date


Number

-001 Initial release. November 2009

4 White Paper
Introduction

1 Introduction
The purpose of this document is to explain what the vertex and geometry processing
selection capability is, and what the benefits are. The document is targeted for OEMs,
system integrators, and end-users that will be building or using motherboards with
Intel® G45 Express Chipsets; and Mobile Intel® GM45 Express Chipsets.

1.1 Terminology
Term Description

TnL Transform and lighting

PSGP Processor-Specific Geometry Pipeline: Code path that performs Vertex


processing calculation on the processor inside the D3D runtime.

SWVP Software Vertex Processing: Vertex Processing that takes place on the
CPU utilizing the PSGP

HWVP Hardware Vertex Processing: Vertex Processing that (traditionally)


takes place on a graphics chip only

VGPSC Vertex and Geometry Processing Selection Capability

1.2 Reference Documents


Document Document
No./Location

Vertex Processing Selection Capability White Paper http://www.intel.com/design/chipsets


/g965/documentation.htm#papers

White Paper 5
Vertex and Geometry Processing Selection Capability

2 Vertex and Geometry


Processing Selection Capability

2.1 Introduction
Intel has released the 15.16 version driver for Microsoft Windows Vista* operating
systems that includes support for Microsoft Windows* 7 operating systems. With the
release of this driver, Intel further extends the capabilities of vertex processing for
Microsoft DirectX* 10. With this technology, Intel is able to deliver a better gaming
experience by adding additional platform performance in order to deliver higher frame
rates and increased game compatibility.

2.2 Integrated Graphics Architecture


The Intel GMA HD architecture is based on a unified shader architecture that is
comprised of a collection of highly-programmable, and scalable, 32-bit floating point
engines. This programmable architecture is one based upon a unified shader model –
which means both vertex, geometry, and pixels shaders run on the same
programmable engines or execution units. These same programmable engines are
also able to process media codecs, as well as various filters for text and image
processing. The Intel graphics driver architecture delivers scalability and flexibility by
supporting features within kernels that are compiled for the Intel graphics
architecture. At the highest level, there are kernels that support 3D and media. Within
3D there are kernels for DirectX and SGI OpenGL*. DirectX then has kernels that
support pixel and vertex shading, and filtering. OpenGL has fragment and vertex
shading, as well as filtering kernels. The media kernels are codec dependent, but
capabilities like IDCT (Inverse Discrete Cosine Transform), motion compensation, and
filtering techniques like advanced de-interlacing would all be supported by a kernel.
Figure 1. 3D and Media Kernels.

Figure 1. 3D and Media Kernels

6 White Paper
Vertex and Geometry Processing Selection Capability

2.3 Why Vertex and Geometry Processing Selection


Capability?
In the process of designing and enabling a driver that supports Vertex Processing and
TnL, Intel engineers discovered that some applications, mainly 3D games, performed
better with vertex and geometry processing done on the processor rather than on the
graphics engine. As mentioned above, the architecture uses the same programmable
engines to process all shaders. By off-loading some of the vertex and geometry
shader processing to the processor, the graphics engine is able to process more pixel
shader data and do additional work like anisotropic filtering. Therefore, the graphics
engine is able to do more while staying within market required power, thermal, and
cost envelopes.

Separate vertex shader, geometry shader, and pixel shader units within the graphics
engine were a potential design option for Intel graphics engines. However, upon
analysis of various 3D applications, it was discovered that the vertex and geometry
traffic is at the beginning of each scene, and only accounted for about one-third of the
computing requirements for a scene. On the other hand, pixel traffic is about two-
thirds of the scene and required most of the computing resources. So for much of the
time the vertex shaders would be sitting idle.

2.4 Driver Architecture


In previous versions of DirectX, there was a path that allowed the processor to do
vertex processing called the PSGP. Applications had to take this path into account and
support a path for vertex processing on the processor and graphics cores.

Intel Engineers have developed a more optimized CPU vertex and geometry
processing module and integrated it into the graphics driver, thus integrating the
capabilities of the PSGP into the driver. When an application calls the D3D runtime
environment (which then calls the graphics driver for vertex or geometry processing),
the driver makes a decision to either have the processor or graphics engine process
the workload. The processing of the data on either the processor or graphics engine
returns the same result to the application. That is, Intel did not induce error or
somehow change the data in a way that achieved additional performance beyond
using a different engine to process the data. However, Intel did optimize the memory
management of being able to swap data between the processor and graphics engines.

Determination as to which applications either process on the processor or graphics


engine is based upon a list contained within the graphics inf that can be edited by
Intel’s customers. The list is based upon stringent application performance validation
results. This technology has a huge benefit to the platform, as the best performance
path can be used for 3D applications. Figure 2 shows the new path that utilizes
VGPSC.

Intel also made this capability selectable by the end-user. Under the CUI (Common
User Interface) there is a tab for 3D. The user clicks the box labeled “custom
settings.” Under the heading of Vertex Processing there are three options: Default,
Application Settings, and Enable Software Processing. The default is Enable Software
Processing. The CUI also has a help capability. The user can click the help button (?
symbol) and then hover over a feature for a brief explanation of the feature, as shown

White Paper 7
Vertex and Geometry Processing Selection Capability

in Figure 3. If the “Enable Software Processing” option is enabled, then either the
graphics engine or CPU is used depending on the application. If “Application Settings”
is enabled, then the graphics engine is used for all vertex and geometry processing.

Figure 2. Vertex and Geometry Processing Architecture

VGPSC

8 White Paper
Vertex and Geometry Processing Selection Capability

Figure 3. Vertex and Geometry Processing Options in CUI

2.5 Benefits of Vertex and Geometry Processing on


Processor and Graphics Engines
The main motivation for this capability was to increase application performance on all
Intel® 4 Series Express Chipsets. Intel had previously used this technology with
DirectX 9 to increase the performance on Intel® 3 Series and Intel® 965 Series
Express Chipsets. Figure 4 shows some games that benefit from having the processor
compute the vertex and geometry data on Intel G45 Express Chipset with DirectX 10.
The data shows that when the processor is used relative to using the graphics engine
for vertex and geometry processing some applications perform better with the
processor. Conversely, Figure 5 shows some applications that perform better using the
graphics engine for vertex and geometry processing with DirectX 10.

White Paper 9
Vertex and Geometry Processing Selection Capability

Figure 4. Intel® G45 Express Chipset Performance - Using Processor


Accelerated Vertex and Geometry Processing with DirectX 10-
based Applications

Figure 5. Intel® G45 Express Chipset Performance Benefits - Using Graphics-


Accelerated Vertex and Geometry Processing with DirectX 10-based
Applications

10 White Paper
Vertex and Geometry Processing Selection Capability

2.6 Summary
Intel has released graphic driver version 15.16 for Windows Vista operating systems
with support for Windows 7 operating systems that extends the capabilities of the
Vertex and Geometry Processing Selection Capability (VGPSC) for Intel Series 4
Express Chipsets. Results show that some 3D applications perform best with using the
processor for vertex and geometry processing for DirectX 10. In other instances,
results show that some 3D applications perform best with using the graphics engine
on Intel G45 Express Chipset for DirectX 10. The Intel driver has been developed to
provide the optimum performance path for 3D applications. Intel’s goal is to provide
the best user experience possible for 3D applications.

White Paper 11

You might also like