vortex icon indicating copy to clipboard operation
vortex copied to clipboard

Consolidate on Criteria or Divan for benchmarking

Open gatesn opened this issue 1 year ago • 5 comments

gatesn avatar Jun 09 '24 12:06 gatesn

My 2c here - I wished I could fork Criterion multiple times, and it seems like Divan is actually maintained which is a big plus in my book

AdamGS avatar Jun 24 '24 20:06 AdamGS

I agree with your point. Seeing criterion have 23 open prs is not a good look for a project with a well defined functionality

robert3005 avatar Jun 24 '24 20:06 robert3005

Only issue I see atm is that Divan doesn't support async benchmarks? Any ideas how to workaround @AdamGS ?

gatesn avatar Jun 27 '24 21:06 gatesn

The first thing I would try is to create the runtime as part of the setup, and then call Runtime::block_on or it's equivalent in the actual benchmark code. From reading the docs seems like there are some threading-related configs you might have to use, and hopefully everything will play nice together.

AdamGS avatar Jun 28 '24 11:06 AdamGS

Hi! I plan to prioritize async benchmarks after I ship JSON output. 🙂 Follow https://github.com/nvzqz/divan/issues/39 for updates

From reading the docs seems like there are some threading-related configs you might have to use, and hopefully everything will play nice together.

That's separate and unrelated from async. Multi-threaded benchmarks are more so for measuring contention on locks and atomics.

nvzqz avatar Jun 30 '24 09:06 nvzqz

We seem to be settling into hand-written benchmark code a la tpc-h and click bench. Should we close / re-focus this issue?

danking avatar Dec 16 '24 16:12 danking

I think the difference here is big vs small benchmarks, where I would love for smaller benchmarks to be divan/criterion based, and the larger ones can be based on our own homebrewed framework (I assume that number of them is more bounded by the number of "official" benchmarks)

AdamGS avatar Dec 16 '24 16:12 AdamGS

It's divan, criterion lost

robert3005 avatar Mar 13 '25 13:03 robert3005