Software Tuning, Performance Optimization & Platform Monitoring
Discussion regarding monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform updating.
1711 Discussions

Voltage levels at different frequency levels on Sandy bridge processor

Rajiv_N_
Beginner
2,211 Views

I'm trying to gather some data from the MSR registers about the voltage levels at various frequency levels. I see that the MSR register: IA32_PERF_STATUS output both the current frequency and operating voltage. But the last two hexadecimal bits give the Voltage ID.

sudo modprobe msr
sudo rdmsr -d --bitfield 15:0 0x198

On one of the forums, I see that for Core2Duo you need to substitute in the following linear equation to obtain the Votlage level at a given Frequency level.
0.7125V + VID*0.0125V
and I'm using a Sandy bridge processor. Could you please direct me to a place where I can find the linear equation or help me build it.

Any help will be appreciated.

0 Kudos
29 Replies
Rajiv_N_
Beginner
625 Views

Sure. So, I did some calculations... here are the results and I'm sure it is in V. The values presented below is the avg voltage levels when all 4 cores are turned on with user controlled frequency levels.

2401000
1.20718383789
------------------------------
2400000
1.0326385498
------------------------------
2200000
1.00323486328
------------------------------
2000000
0.965698242188
------------------------------
1800000
0.932540893555
------------------------------
1600000
0.900634765625
------------------------------
1400000
0.891876220703
------------------------------
1200000
0.858093261719
------------------------------
1000000
0.826812744141
------------------------------
800000
0.801162719727
------------------------------

0 Kudos
Bernard
Valued Contributor I
625 Views

The question arises if the fluctuation values are related to overall load of CPU(CPU resources) per some unit time as function of aferomentioned load or it is simply voltage fluctuation.I am thinking about  performing some test which hopefully can show some pattern of valtage fluctuation as a function of load. 

You can for example rise your thread priority to real time(Windows terminology) and set its affinity to specific core and perform some intensive calculation and look at voltage values.

0 Kudos
Rajiv_N_
Beginner
625 Views

I ran some stress microbenchmark (with no cache access) and I see that the voltage is almost constant. "almost" is definitely not a scientific word, but the average error is <1% with a very low SD.

0 Kudos
Bernard
Valued Contributor I
625 Views

It seems that this could be dynamic voltage scaling and what you are seeing is the scaling step.

0 Kudos
Rajiv_N_
Beginner
625 Views

Sure. I got that part of it.

0 Kudos
Patrick_F_Intel1
Employee
625 Views

Hello Rajiv,

I haven't tried to track voltage but I've always assumed it would vary somewhat with frequency and probably by which cstate the cpu is in.

Some chips let you control the frequency absolutely but others, when the chip is idle, will go into halted states and this probably changes the voltage. You would probably have to switch to using a 'no halting when idle' OS option (on linux you can use the 'idle=poll' boot cmdline option) and keep the cpus fully busy to avoid seeing the voltage change.

Here is a paper which looks interesting but I haven't read it carefully to see how relevant it is. http://people.cs.pitt.edu/~kirk/cs3150spring2010/Multiple_Clock_and_Voltage_Domains_for_Chip_Mu.pdf

Pat

0 Kudos
Bernard
Valued Contributor I
625 Views

Interesting paper.It seems that performance of cpu intensive  applications scales lineary as frequency increases.

0 Kudos
Rajiv_N_
Beginner
625 Views

Pat,
Sure, I disabled C-states from the grub and recorded the voltage levels again. I got the results as expected, that is, the values don't fluctuate since the static power doesn't dominate anymore.
@Iliyapolak:
It is not exactly linear, it depends on many things like stall-cycles, IO interrupts, kernal thread interrupts, etc

P.S: I worked with Kirk at Pittsburgh earlier this year :)



0 Kudos
Bernard
Valued Contributor I
625 Views

Hi Rajiv

I commented on results of test performed by the authors of the paper mentioned by Pat.I suppose that exact shape of such a function (voltage fluctuation) will not be linear and in best case it will like sum of many sinusoids.

0 Kudos
Reply