Writing code to reveal the performance details of mobile processors: calculations reveal relationships
When you can calculate the processor frequency and time stamp differences, you can use these files to determine the actual clock speed at which an Intel processor is running.

by Richard Winterton, senior software engineer, Intel Corp.

James Joule developed the formula for power dissipation (P = I2R), which states that power is equal to electrical current squared times resistance. His laboratory work of long ago illuminates technologies that he could not have dreamed of, including a quite different, but related, type of power—the computing power of Intel's high performance laptops.

I am taking license by using the word "power" in these two different contexts, but the two are related. This paper and the related sample code explain how to generate very accurate frequency measurements of Intel® processors, as well as a nice little class method to measure time in microseconds.

The relationship between power and frequency
The frequency at which a processor runs is directly related to the amount of power it consumes.

Whereas the formula P=I2R calculates "real" power, we are more concerned here with a reactive component to power that is due to the inherent capacitance of the processor. Reactive power is directly related to frequency and can be expressed using the formula P=V2CF, which states that power is equal to the voltage squared times capacitance times frequency.

To see how this formula relates to concrete circumstances, consider the following case. I am working on a laptop based on a Mobile Intel Pentium® 4 Processor—M and running Microsoft Windows XP. The System Properties screen reports that my processor is running at 2.0 GHz when the laptop is plugged in, but it reports 1.2GHz when I am running on battery power and the processor is not actively being used.

Intel has gone to considerable effort and expense to build my processor to work at those different power levels when plugged in or unplugged. To understand why, look again at the formula P=V2CF. By lowering the frequency, the amount of power consumption is also decreased. There are many other tricks that Intel uses to decrease power consumption in their mobile processors, but this is a fairly obvious one.

A framework for measuring
There is one particularly difficult complication to determining at what frequency a processor is actually running. Just as the Heisenberg uncertainty principle states more generally, the very act of measuring the frequency actually changes the frequency itself.

Subscribers who liked this article also read:
Utilizing thread pools in performance-critical applications
by Blake Thompson, application engineer, Intel Corp. When using thr...
Framework for Platform-Based Dynamic Resource Provisioning
by Dean Yao, Tisson Mathew, Mazin Yousif, Sharad Garg, Intel Research ...

If you're interested in this topic, these articles may be helpful:

Game development: Mobile Games Developer Guide v0.06
by Rajshree Chabukswar, Cody Northrop, Adam Lake, Ann-Charlotte Joseph...
Cisco Helps Power First Ever Mobile Credit Union
from Cisco Systems People’s Federal Credit Union, a not-for-profi...
Security considerations for mobile hardware
by Alan Zeichick, principal analyst, Camden Associates. Intel Corp. ...
Financial Services Case Study: Allianz Life Korea Deploys Intel Centrino Mobile Technology with 15% 4-Year Sales Growth
Sales personnel make money when they're out working with current and p...
Implementing mobile security
by Jim Geier, principal, Wireless-Nets Ltd. Intel Corp. Learn the t...

Related Jobs:

Programmer Analyst II #0081391 - CA - San Francisco - IndyMac Bancorp, Inc.
Post Date 12/19/2006 Requisition Number 0081391 Job Title Programm...
Application Engineer #3259 - MA - Burlington - Webex, Inc.
Application Engineer Location: Burlington Job Code: 3259 ...
IWay Developer #733 - PA - King of Prussia - RCG Information Technology
Description: All applicants must have a minimum of 3 years IT Industry...
Consultant - ND - Fargo - StrataCom
StrataCom Consultants provide consulting services to Fortune 500 com...
NW-EP/KM-dev #15608 - IL - Moline - Radiant Systems, Inc
Product Skill Details: EP Dev - Automotive Warranty Product Skill:...
Software Development Engineer #132183 - WA - Redmond - Microsoft Corporation
Are you passionate about technology? Do you want to help us create a f...
Sr Server Programmer #1714 - CA - San Diego - Sony Corporation of America
Sr Server Programmer San Diego, CA Sep 18 Requirements So...
IT Procurement Analyst, Senior #7714 - OH - Cleveland - Ohio Savings Bank
Essential Functions: * Analyzes complex system requirements for...
Network Design Engineer #14286 - AL - Birmigham - Radiant Systems, Inc
Description POSITION LOCATED IN BIRMINGHAM, AL********** Seeking CDM...
Programmer Analyst #0080852 - CA - Pasadena - IndyMac Bancorp, Inc.
Post Date 11/7/2006 Requisition Number 0080852 Job Title Programme...