I've noticed that if I time my program launched from the command line, it is slower than when I launch it from VTune (~25sec vs ~18sec). I've already checked that I'm running the same binary with the same options. Also, when I run it from the command line I run it 5 times consecutively.
I've noticed that, when launched from command line, the CPU stays in "slow" mode (at 1600MHz measured by CPUz), but when launched from VTune the CPU enters "turbo mode" (goes up to 2400MHz measured by CPUz).
Any ideas about why this is happening?
Does VTune launch my program in some special way to trigger the "turbo mode"?
Thanks in advance
PS: my PC is an Intel Xeon E5620 running Windows7 64bits, in case it helps
This is somehow related to CPU throttling.
No mater how I run my test program, I cannot get my CPU out of throttle mode.
I've even tried running simultaneously one instance of my (single-threaded) test program on each core, but the CPU does not snap out of throttle mode.
However, VTune somehow does get the CPU out of throttle mode, when profiling my test program.
Maybe the event sampling is done in a way that disables throttling on the CPU?
By default sampling internal for advanced-hotspots is 1ms and with this frequency CPU is not going to lower power states.
To check this you can increase sampling interval to say 10ms through analysis type configuration dialog or in project properties - "Duration time estimate" - 15 min - 3 hours.
You can also try Basic Hotspots driverless collection BTW.
VTune does not apply special app launch settings to run it in "turbo" mode.
Thanks & Regards, Dmitry