Skip to content
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

Hold off for now: Add benchmark helper scripts #135

Draft
wants to merge 212 commits into
base: v1.2-proposal
Choose a base branch
from

Conversation

curiousleo
Copy link
Collaborator

Reverts #134

hvr and others added 30 commits December 21, 2014 10:43
Updates Haskell 98 link
…nad flavor

thats impossible, so switchign to s -> m (a,s) flavor
have a candidate travis file,
added entropy to the dependencies for now (spoke with TomMD and we agreed that they should be combined sometime)
started work on basic distribution generation tools
…ts representation

shifting to unboxed vector for the permutations to improve locality and memory usage
curiousleo and others added 27 commits May 13, 2020 11:25
* Make bitmask-with-rejection non-recursive
* INLINE some uniformRM implementations
* Generate Float and Double via division

Coverage
========

Before:

    0.787% of representable Floats in the unit interval reached

After:

    7.874% of representable Floats in the unit interval reached

(A similar enumeration for Double is impossible, but it is very likely
that coverage is increased for Doubles too.)

Performance
===========

Before:

    pure/random/Float                        mean 331.1 μs  ( +- 21.67 μs  )
    pure/uniformR/unbounded/Float            mean 324.6 μs  ( +- 2.849 μs  )

    pure/random/Double                       mean 411.3 μs  ( +- 5.876 μs  )
    pure/uniformR/unbounded/Double           mean 416.8 μs  ( +- 41.93 μs  )

After:

    pure/random/Float                        mean 27.32 μs  ( +- 158.0 ns  )
    pure/uniformR/unbounded/Float            mean 27.37 μs  ( +- 422.0 ns  )

    pure/random/Double                       mean 27.34 μs  ( +- 303.1 ns  )
    pure/uniformR/unbounded/Double           mean 27.49 μs  ( +- 983.7 ns  )

* Floating point ranges inclusive in upper bound
* Remove -fobject-code compilation, since Cmm was removed
* Fix example in cabal file
* Take care of some compile warnings in legacy benchmarks
Fixes haskell#59 by making 'StdGen' not
an instance of 'Read'.
* Slight improvement in performance. (for small lengths it doubles the performance)

* Addition of a couple tests for ByteString generation

* Add `Eq` and `NFData` instances for `StdGen`

* Add benchmark for generation of `ShortByteString`s
* Fix GHC warnings, apply some hlint suggestions

* Enable more GHC warnings
* Reduce .gitignore diff

* Remove unused configurations from .travis.yml

* Remove default comments from stack-old.yaml

* Remove default comments from stack.yaml

* Remove commented out Spec code
@curiousleo curiousleo force-pushed the v1.2-proposal branch 2 times, most recently from 450d75e to 73977e9 Compare May 20, 2020 14:20
Shimuuar pushed a commit to Shimuuar/random that referenced this pull request Jan 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants