Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • GHC GHC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 5,410
    • Issues 5,410
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 604
    • Merge requests 604
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Glasgow Haskell CompilerGlasgow Haskell Compiler
  • GHCGHC
  • Issues
  • #19701
Closed
Open
Issue created Apr 13, 2021 by Bodigrim@BodigrimDeveloper

Some text benchmarks got slower in 9.2.0.20210331

Reproduction

  1. Checkout text:
git clone https://github.com/Bodigrim/text
cd text
git checkout bench-92 # 5bfa652

git clone https://github.com/bos/text-test-data benchmarks/text-test-data
cd benchmarks/text-test-data
make
cd ../..
  1. Run ascii-small benchmarks with GHC 9.0.1 (it will take around five minutes):
cabal bench -w ghc-9.0.1 --ghc-options '-fproc-alignment=64' --benchmark-options '--csv 9.0.1.csv --stdev 2 --timeout 100 --hide-successes -p ascii-small'
  1. Compare againt benchmarks with GHC 9.2.0.20210331 (it will take around five minutes):
cabal bench -w ghc-9.2.0.20210331 --ghc-options '-fproc-alignment=64' --benchmark-options '--baseline 9.0.1.csv --csv 9.2.0.csv --stdev 2 --timeout 100 --fail-if-slower 10 --hide-successes -p ascii-small'

Expected results

No benchmarks become slower.

Actual results

All
  Pure
    drop
      LazyText+ascii-small:       FAIL (0.62s)
         36 μs ± 1.2 μs, 18% slower than baseline
    last
      Text+ascii-small:           FAIL (1.69s)
         12 ns ± 364 ps, 12% slower than baseline
    mapAccumL
      Text+ascii-small:           FAIL (2.93s)
        699 μs ±  25 μs, 22% slower than baseline
      LazyText+ascii-small:       FAIL (20.79s)
        633 μs ± 3.4 μs, 16% slower than baseline
    mapAccumR
      Text+ascii-small:           FAIL (0.38s)
        1.4 ms ±  47 μs, 13% slower than baseline
    map.map
      Text+ascii-small:           FAIL (3.41s)
        200 μs ± 1.6 μs, 12% slower than baseline
    take
      LazyText+ascii-small:       FAIL (2.39s)
         36 μs ± 578 ns, 21% slower than baseline
    length
      cons
        Text+ascii-small:         FAIL (0.95s)
           55 μs ± 1.1 μs, 27% slower than baseline
      init
        Text+ascii-small:         FAIL (0.51s)
           56 μs ± 2.0 μs, 30% slower than baseline
      take
        Text+ascii-small:         FAIL (1.15s)
           66 μs ± 1.0 μs, 34% slower than baseline
      tail
        Text+ascii-small:         FAIL (0.51s)
           56 μs ± 1.3 μs, 28% slower than baseline

11 out of 101 tests failed (169.27s)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking