JetBrains / lincheck

Framework for testing concurrent data structures
Mozilla Public License 2.0
576 stars 33 forks source link

Bytecode instrumentation cache #229

Closed eupp closed 1 year ago

eupp commented 1 year ago

Currently bytecode instrumentation can take significant time. Moreover, it is performed for each scenario even when testing the same data structure.

In the context of the adaptive planning feature #158, instrumentation time can interfere with the invocations time, thus making it harder to get reliable prediction for the average invocation time.

This PR provides simple instrumented bytecode caching, thus mitigating the performance overhead of instrumentation.