-
-
Notifications
You must be signed in to change notification settings - Fork 358
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
disabling clock frequency scaling and dropping page cache #239
Comments
Dropping the page cache can be done with the Pinning the scaling freq appears more difficult; for example, on a server with an AMD EPYC 7401P, I don't see any clear way to do it via sysfs. This is a good idea to look into for the LLVM benchmarks though. |
Thank you very much for the feedback.
No, it does not. But I think it's definitely worth to think about adding support in some sense (showing warnings when scaling is activated, providing an easy way to activate it, etc.). I'm not really familiar with the details of clock frequency scaling and how it can be deactivated, but I know that google-benchmark shows this warning when CPU frequency scaling is activated:
(see https://github.com/google/benchmark#disabling-cpu-frequency-scaling) They suggest to use sudo cpupower frequency-set --governor performance to disable it.
Exactly.
It looks like So far, I haven't found an example where I can measure a significant difference between the two modes, but I'd be interested to hear your feedback. |
This may be more pronounced on mobile. |
Coming back to this... google benchmark checks if CPU frequency scaling is enabled by reading the contents of
We could easily do the same in Automatically disabling frequency scaling is not really possibly as it requires sudo privileges. Suggestions? |
But other users of hyperfine may not.
That has not been my experience, but YMMV.
What does prior art (google benchmark) do? |
It's hard for me to implement this feature if I have no example program to test this.
I have described this above. It just prints a warning. |
Hi! Cool utility, @nathanchance is using it to benchmark some of our toolchains.
I was wondering if hyperfine does anything related to disabling clock frequency scaling?
On Android, if we don't pin the cores' clocks to fixed frequency, the noise in the benchmark frequently makes the results unreliable.
Is what I usually do; I'm not sure if the same sysfs nodes are exposed on x86.
Another thing I do when benchmarking is clear the page cache rather than do warmup runs:
I couldn't quickly tell if these are done by hyperfine, but maybe they might help?
The text was updated successfully, but these errors were encountered: