HypothesisWorks / hypothesis

Hypothesis is a powerful, flexible, and easy to use library for property-based testing.
https://hypothesis.works
Other
7.58k stars 587 forks source link

Investigate `Examples` performance #4066

Open tybug opened 3 months ago

tybug commented 3 months ago

While investigating https://github.com/HypothesisWorks/hypothesis/issues/4014, we improved on some performance hits we took during the IR migration (#3921). A remaining holdout is computing _mutator_groups, accounting for 15% of runtime in https://github.com/HypothesisWorks/hypothesis/issues/4014#issuecomment-2257127814, in part composed of _ir_starts_and_ends (7% total runtime).

This seems high to me. We should see if we can track equivalent information inside ConjectureData in a more performant way, for either ir bounds, or mutator groups, or both — or neither, and decide no action is needed.