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

pause instruction doesn't seem to reduce cpu usage / elect consumption

JLie
Beginner
354 Views
Hello, I came across the pause assembly instruction which is effective with sse2. I own a core 2 duo from 2007 (Intel(R) Core(TM)2 CPU T7400 @ 2.16GHz) and when used in a spin wait loop, i see no change in cpu usage / electric consumption. i used the same loop as here : https://software.intel.com/sites/products/documentation/doclib/iss/2013/compiler/cpp-lin/GUID-3488E3C1-33C3-4444-9D72-CB428DCA3658.htm So are there some options to check to be sure it is working ? Even repeated x3000 (yes, a lot) it still shows no improvement. Did I miss something ? jog
0 Kudos
4 Replies
Bernard
Valued Contributor I
354 Views

I suppose that pause instruction delays the execution of the next scheduled to run instruction, but architectural registers context is preserved and this also consumes finite amount of energy.

0 Kudos
JLie
Beginner
354 Views
Which means that multiplying the pause instructions will not help having a good granularity on the latency i want to add to the busy loop ? It will always consume more energy than a sleep for the same amount of time (theorically) ?
0 Kudos
Patrick_F_Intel1
Employee
354 Views

Hello Jog,

What are you trying to achieve? Current versions of operating systems spend an enormous amount of research trying to be power efficient. Is there some problem you are trying to fix?

Pat

0 Kudos
JLie
Beginner
354 Views
Hi Patrick, You are absolutely right, but the fact is that I don't like the way it is. As far as pause is concerned, it is said that interesting power savings are to be gained. Hmmm, not so sure actually. I am a bit disapointed. i thought pause as a mean to add some delay in a busy loop and to finely grain the time one would wait without relying on a system call which is slow. My testings proved I am wrong :)
0 Kudos
Reply