Opened 2 years ago

Last modified 21 months ago

#13892 new task

Add some benchmarks to nofib from Andras Kovac's Eff benchmarks

Reported by: mpickering Owned by:
Priority: normal Milestone:
Component: NoFib benchmark suite Version: 8.0.1
Keywords: newcomer Cc: michalt
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


Andras has a bunch of different benchmarks for different effect handler code which stresses the optimiser in interesting ways. It would be good to add some of these benchmarks to nofib as they are likely quite different from a lot of the examples already in there.

Change History (10)

comment:1 Changed 2 years ago by mpickering

Component: CompilerNoFib benchmark suite
Owner: set to mpickering

comment:2 Changed 2 years ago by simonpj

Oooohh yes please!

comment:3 Changed 2 years ago by clinton

Is there a tutorial/readme on adding benchmarks to NoFib?

comment:4 Changed 2 years ago by mpickering

clinton, you can see an example here -

I still want to add more specific Eff benchmarks but they are a bit more difficult to add as you have to remove library dependencies by moving the relevant definitions into local files.

comment:5 Changed 2 years ago by Ben Gamari <ben@…>

In c7e6c90/nofib:

Add State monad benchmarks by Andras Kovacs

They are originally from

They show interesting interactions with call arity, spec constr and SAT.

Reviewers: O26 nofib, michalt, simonpj, bgamari

Reviewed By: bgamari

Subscribers: RyanGlScott

GHC Trac Issues: #13892

Differential Revision:

comment:6 Changed 2 years ago by bgamari

Milestone: 8.4.1
Resolution: fixed
Status: newclosed

These are now in nofib.

comment:7 Changed 2 years ago by mpickering

Owner: mpickering deleted
Resolution: fixed
Status: closednew

There are still more that can be added. The state monad ones were just the easiest to add initially.

comment:8 Changed 23 months ago by bgamari


This ticket won't be resolved in 8.4; remilestoning for 8.6. Do holler if you are affected by this or would otherwise like to work on it.

comment:9 Changed 21 months ago by mpickering

Keywords: newcomer added

There are still some benchmarks specifically to do with effect handlers which could be added but they require a bit more work to extract from the libraries.

comment:10 Changed 21 months ago by bgamari

Milestone: 8.6.1

Removing the milestone since it's unlikely to happen for 8.6.

Note: See TracTickets for help on using tickets.