choojs / nanomorph

🚅 - Hyper fast diffing algorithm for real DOM nodes
MIT License
725 stars 57 forks source link

benchmark #91

Open yoshuawuyts opened 6 years ago

yoshuawuyts commented 6 years ago

It'd be neat to have a benchmark to test our diffing needs — perf is a feature, and we should be able to catch regressions.

Given this would need to run in the browser, we'd probably need some tooling around this. I was thinking it'd be cool to run a headless Chrome instance through puppeteer, and use the nanobench module to perform the benches. Would be neat if we could run it as a standalone CLI thing, with similar output to TAP.

But by all means — feel free to pick up this issue, and run with it. Probably worth picking up similar benches as in https://github.com/choojs/choo/issues/492.

Hope this makes sense. Thanks!

tkh44 commented 6 years ago

FWIW we have some benchmarks setup for emotion that use puppeteer and run on every ci build. Might be some useful stuff to steal. https://github.com/emotion-js/emotion/tree/master/packages/benchmarks

him2him2 commented 6 years ago

This looks interesting. I would be happy to take it on.

graforlock commented 6 years ago

It'd be cool as I believe there was some regression of choo 5 vs 6, and it chould've been caught

We can do a CI docker build to run it automatically on npm release bumps, this would be best solution

yoshuawuyts commented 6 years ago

@him2him2 amazing! :D