Comments (7)
I'm using Windows 7 64-bit. With this patch I see a similar improvement.
from criterion.
What's the status of this? Is unpatched criterion good for benchmarking on Windows by now?
from criterion.
Thanks, I've fixed this in 53d3203.
The fix is fairly involved because it needs to work on multiple platforms. I particularly commend you to read the comment at the start of the Windows file.
from criterion.
Thanks for the update. I'll use criterion within Windows more often, and see how this improves time measurements. It looks like the clock
library does things similarly.
At first I thought calling QueryPerformanceFrequency
once at the start of testing was the wrong way to go about it. I seem to remember a Microsoft example that called it once before every pair of calls to QueryPerformanceCounter
, which indicated to me the performance counter's frequency was not stable.
According to a comment on QueryPerformanceFrequency
, the behavior is affected by which timing hardware is available to Windows. Perhaps modern computers all have a stable "TimeStampCounter".
from criterion.
I still see this bug with criterion-0.8.0.1. Is the patch not yet in the latest released version?
from criterion.
There is not a release that has this fix. You'll want to use HEAD for a bit if you need it.
from criterion.
Ok, thanks.
from criterion.
Related Issues (20)
- Presence of double quotes in benchmark name produces broken HTML report HOT 5
- 0.1.2.0 build failure on Apple Silicon HOT 22
- Log scale discoverability HOT 1
- Criterion/Main/Options.hs:38:48: error: Module ‘Options.Applicative.Help.Pretty’ does not export ‘Ann’ | 38 | import Options.Applicative.Help.Pretty ((.$.), Ann) HOT 5
- Regressions in Config Parameter are Ignored HOT 3
- Support aeson-2 HOT 2
- Is there any way to generate a static output? HOT 3
- Add a variant of runBenchmark which also takes iteration range. HOT 2
- [FR] support benchmarking max memory usage HOT 4
- use performMajorGC HOT 10
- Fails to compile with optparse-applicative-0.17.0.0 HOT 2
- Update tutorial to suggest `v2-`style `cabal` commands
- Avoid only a subset of benchmarks being specialized by SpecConstr. HOT 5
- please document that (and how) criterion runs GC HOT 1
- first benchmark is expensive HOT 5
- please document that `nf` is (contains) an IO action
- Add or migrate to `peakAllocated` HOT 1
- Website is down HOT 7
- Examples directory link is wrong on Hackage Readme HOT 1
- Allow 2D grouping HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from criterion.