CMP Game Media Group Presents: Home
  JoinHelpContact UsShop

Newswire
Features
Connection
Job Search
Directories
By Rob Wyatt
Gamasutra
May 28, 1999
Vol. 3: Issue 21

Features
Wyatt's World

Cracking Open The Pentium III

Contents

What is all the fuss about?

How do I detect the new instructions?

What operating system support is required for the Pentium III?

What are these new SIMD instructions?

How do I make use of the new instructions?

How do I debug code with the new instructions?

How do I read the new Pentium III serial number?

Is there any new performance/ profiling information?

Is there any new performance/profiling information?

The performance registers within the Pentium III are identical to the performance registers within the Pentium II, apart from the addition of the following:

Event Num.

Unit Mask

Description

SIMD Instruction Performance Counters

0xD8

0x00

Packed and Scalar SIMD Instructions retired

0xD8

0x01

Scalar SIMD Instructions retired

0xD9

0x00

Packed and Scalar SIMD computational instructions retired

0xD9

0x01

Scalar SIMD computational instructions retired

Prefetch Performance Counters

0x07

0x00

Non temporal prefetch instructions dispatched, including speculative.

0x07

0x01

Prefetch instructions dispatched for all caches, including speculative.

0x07

0x02

Prefetch instructions dispatched for L1 and L2, including speculative.

0x07

0x03

Weakly ordered stores dispatched, including speculative.

0x4B

0x00

Non temporal prefetch instructions that missed all caches

0x4B

0x01

Prefetch instructions that missed all caches

0x4B

0x02

Prefetch instructions for L1 or L2 that missed all caches

0x4B

0x03

Weakly ordered stores that missed all caches

Accessing and using the performance information is beyond the scope of this article. (I covered the subject in depth in my article "Building an Inline Performance Monitoring System", Game Developer, May 1998). With this article and the information above, you should have no problem reading the new events. VTune 4.0 also has the ability to read the new Pentium III performance counters, if you don’t want to do it yourself.

For Further Information

Lots of information can be found on Intel’s developer web site. This site contains lots of source code examples, all the processor manuals, and the SIMD tools mentioned within this article. If you have VTune 4.0, you’ll find all of the SIMD example code and the latest processor manuals (including the optimization manual) on the CD-ROM. Check out the following:

http://developer.intel.com/design/pentiumiii/manuals (Pentium III manuals)
http://developer.intel.com/vtune/cbts/strmsimd/appnotes.htm (PentiumI III App Notes)
http://developer.intel.com/design/pentiumiii/applnots/245125.htm (Serial Number)
http://developer.intel.com/design/pentiumii/applnots/241618.htm (CPUID)
http://developer.intel.com/design/pentiumiii/psover.htm (Serial Number Control)
http://developer.intel.com/vtune/macropak/index.htm (MASM macro file)
http://developer.intel.com/vtune/rvt/index.htm (Register viewing tool)
http://developer.intel.com/vtune/optidrvr/index.htm (NT4.0 SIMD driver)
http://developer.intel.com/vtune/ (VTune home page)

Next month I’ll explore processor detection, using a DLL that detects every feature of every make and model processor on the market. If you have a question about this article, Pentium processors, Windows or PCs in general, then email them to me at Gamasutra@Rob-Wyatt.com

Rob has been involved with games and system level code on almost every major platform for the past 12 years. Currently he is mainly involved with PCs and Windows. When he is not working, he can be found either flying his Cessna out of Santa Monica airport or at the pub. He can be contacted at Gamasutra@Rob-Wyatt.com.


[Back to Introduction]
 


Home | Join | Help | Contact Us | Shop | Newswire | Site Map | Calendar
Write for Us | Features | Connection | Job Search | Directories


Copyright © 2000 CMP Media Inc. All rights reserved.
Privacy Policy