moves-rwth / storm

A Modern Probabilistic Model Checker
https://www.stormchecker.org
GNU General Public License v3.0
126 stars 73 forks source link

Optimization of robust VI #512

Closed linusheck closed 3 months ago

linusheck commented 3 months ago

This PR contains small adjustments to robust VI that significantly speed up the computations (at least 10x). Profiling revealed that re-allocating the vector is costly (already pointed out by the comment) and diameter() changes the rounding mode on each call, which is very expensive. I could not manage to get faster sorting than std::sort, although I haven't tried using boost::container::flatmap. I will try that in a private branch later :) for now it's a good improvement.

linusheck commented 3 months ago

Hm, CI says 30.19 error: failed retrieving file 'gnutls-3.8.3-1-x86_64.pkg.tar.zst.sig' from geo.mirror.pkgbuild.com : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds

volkm commented 3 months ago

Thanks for the changes. 10x faster sounds really good. The changes look good to me.

volkm commented 3 months ago

Can you try restarting the failing CI job? The error should be independent of your changes.

tquatmann commented 3 months ago

LGTM! Thanks for the changes.

linusheck commented 3 months ago

just FYI, I currently have no rights to merge the PR :D