ujson: the branch is ~4% slower
piconumpy: the benchmark is not very stable, the branch is between 0% and 5% slower
microbenchmarks: we don't have an automated way to compare branches. I ran microbenchmarks three times for each branch and averaged the results, sorted from the biggest to the smallest slowdown. Many microbenchmarks are around ~10% slower.
All in all, I am a bit worried that this approach might be suboptimal: if there are so many microbenchmarks 10% slower, maybe there will also be real-life code which will mostly use the costly features and show bigger slowdowns than ujson and piconumpy?
I think that the major point of this branch are:
- it makes it easier to make hpy and cpyext to cooperate
- it feels "less of a hack"
I don't think that point (2) is worth a potential 10% slowdown, but point (1) is important, of course. So my question is: what are the alternatives?
--HG-- branch : hpy-refactor-exceptions