Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimize coverage analysis #111

Open
andre15silva opened this issue Jul 30, 2021 · 3 comments
Open

Optimize coverage analysis #111

andre15silva opened this issue Jul 30, 2021 · 3 comments

Comments

@andre15silva
Copy link
Contributor

Hot spots of the test-runner process started by flacoco on math_70:

Self times
pic-selected-210729-1739-13

Expanded self times for the top result. This highlights that the most time consuming operation is analyzing the instrumented classes after execution.
pic-selected-210729-1739-56

Total times
pic-selected-210729-1740-26

Where to optimize?

  1. Coverage analysis for sure. This is the most time consuming operation with ~77% of cpu time being used there. (169s/218s)

(This is copied from ASSERT-KTH/flacoco#74)

@andre15silva
Copy link
Contributor Author

A possible path to optimize is to use online instrumentation (See https://www.eclemma.org/jacoco/trunk/doc/agent.html)

@andre15silva
Copy link
Contributor Author

andre15silva commented Aug 2, 2021

FYI, I'm experimenting with online instrumentation with JMX.

See https://github.com/andre15silva/test-runner/tree/online-prototype, working prototype but it is slower from my tests.

@andre15silva
Copy link
Contributor Author

andre15silva commented Aug 5, 2021

Btw @danglotb, I got online instrumentation working but it was even slower, so I gave up on that.

You might want to read the last two comments of ASSERT-KTH/flacoco#74, if you want to keep up to date with the optimization effort.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant