Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Submitted By: John Winfield (winfij)
Assigned to: Nobody/Anonymous (nobody)
Summary: Incorrect performance results on mobile platforms
I've been getting incorrect throughput results on my
laptop to a USB drive and wading through the source
code I found that you're using the RDTSC to calculate
the runtime for use in getting the MB/s throughput.
This won't work on mobile platforms since they change
clock speed dynamically and thus report a fixed RDTSC
rate independant of the CPU clock speed.
There's a note about this from the NVIDIA web site:
Don't use the Read Time Stamp Counter (RDTSC) to do
timing in your app. Here's why: it is unusable on mobile
platforms because calculations assume a fixed clock
speed. Mobile platforms (such as notebooks) will
throttle back the CPU at unexpected times making the
tick count from RDTSC useless. Instead use
QueryPerformanceCounter, which insures consistent
architecture independent results.