Closed talsewell closed 5 years ago
On advice from @agomezl I scraped the regression history. There's no interesting trend in the translation times, they're pretty constant, though there are some strange outliers I don't understand (specifically 455).
I have just looked at 455 and am suspecting the translation looks faster because its timing was taken since the resumption, not since the the start.
Some updates about this:
There's some progress on this in PR 551: https://github.com/CakeML/cakeml/pull/551
Some of the above summary was wrong. I'll include more of an explanation of the current state if/when the above PR is merged.
@talsewell is this done now?
Yes, I think that all the obvious major issues have been addressed. If anyone's using the translator interactively and comes across particular things that are annoying, we can investigate them specifically.
In some recent regression runs, the translator is the first "really slow" task.
For instance, in regression 491, the time taken was approximately 5-6 hours for proofs, 5-6 hours for translation, and 10-15 hours each for the 32/64 bit self-bootstraps.
Of those, it looks like the translation might be the easiest to try to speed up.
The idea of this issue is to gather thoughts on what might be improved.
It was suggested that manipulating the value environment repeatedly is an issue. I've done an experiment which suggests that this isn't a big issue. I don't know if the progress so far on the "abstract translator" (see #202 ) is relevant or not.
It was also suggested that the treatment of EqualityType left room for improvement. That will be the next place I look.