This works on my computer just fine, after adjusting the constant to the value I find in my own proc/cpuinfo. Place printf statements after each getticks() call. Be sure to use %Ld:
I am trying to find out the Speed of the CPU while it is in 87.5 % Throttling. I am using RDTSC to get the Frequency of the Processor. Its reporting as 15 GHz while it is running in the lowest Speed. I need to validate whether CPU is running in the specified speed while it is in Throttling. As Calv notified i cannot use RDTSC, what could be the better way of doing. could you please any one help me.
I need to re-phrase your question --- please tell me if this is correct: How does one find out (on Linux) whether the CPU is actually running at the speed specified in cpuinfo?
Instead of the sleep statement above, set an alarm for 10 seconds, do some CPU-intensive work, get the number of ticks, compare the clocks to find how long the CPU actually slept (setting an alarm does not guarantee anything) and calculate. Use gettimeofday() to get the actual time.