rascal
rascal copied to clipboard
Significant performance regression in rascal-core generate sources and/or running the tests
Describe the bug
"Compile, Generate and Test" went from 45-60 minutes of previous versions of rascal-core
to over 2 hours in the current version:
- current version https://github.com/usethesource/rascal-core/runs/4546598033?check_suite_focus=true
- representative earlier version: https://github.com/usethesource/rascal-core/runs/4458098179?check_suite_focus=true
Note that the github action is significantly slower than my own machine. Still there is a significant slow-down on my machine too, I feel. I can't check easily though without re-running the old version.
To Reproduce
- run
mvn test
in rascal-core - or wait on the github actions after a push
- the current version loops through
pcfg.libs
to find if certain files exist, while the last version that takes 60 minutes does not do that. could that be the cause? the libs contains 4 jar files which are (very) big, and possibly not indexed? finding out if something is not in there could take a while...
the 2 hours is also due to 3 times checker is run.
That is a different project. I'm talking about rascal-core
maybe the rascal-core project should get it's own issues? or at least a label?
there is the compiler
and typechecker
labels and also rascal-core
is mentioned in the subject line
yup, my bad, I read past that. but the typechecker we are also running on the rascal code, and I was just checking that gh actions run, so my wires got crossed.
rascal-core is a temporary project for the sake of independent progress, which will be merged into the rascal
project sometime in the future. But I'd rather keep the issues together; also given the experience that IDE users are not be able to guess from which of our projects which error message comes, and so they will end up here anyway.
BTW we are catching up with months of progress in rascal-core, which is why we are now registering lots of new issues there.
These observations are outdated and we have to reassess performance with the upcoming release. Closing this for now.