On 1/20/21 12:06 AM, BALATON Zoltan wrote: > On Tue, 19 Jan 2021, Richard Henderson wrote: >> My recent change for caching tcg constants has, in a number of cases, >> overflowed the statically allocated array of temporaries. Change to >> dynamic allocation. > > This seems to work for me so > > Tested-by: BALATON Zoltan <bala...@eik.bme.hu> > > but have you done any performance tests to check that this actually > improves emulation speed? To mee it seems slower. Booting AmigaOS on > sam460ex with c0dd6654f207 (just before your TCG series) takes: > > real 0m33.829s > user 0m34.432s > sys 0m0.296s > > but on HEAD with this series: > > real 0m44.381s > user 0m46.058s > sys 0m0.532s > > This is noticable decrease in speed also without measuring it. With just > increasing the TCG_MAX_TEMPS to 2048 on 7c79721606be without this series > I get: > > real 0m42.681s > user 0m44.208s > sys 0m0.435s > > So the performance regression is somewhere in the original series not in > this fix up series.
Cc'ing Lukas for the performance part, as he is investigating how to catch such regressions. >> I'll note that nothing in check-acceptance triggers this overflow. >> Anyone care to add some more test cases there? > > The proposed test for the upcoming pegasos2 machine may also catch this > (when that will be merged, its dependencies are still under review) What are your running on pegasos2? > or > the sam460ex test that currently only checks the firmware could be > enhanced to try to boot AROS if somebody wants to do that. The drawback > is that it needs an external iso whereas the current test doesn't need > any additional images but it did not catch problems with IRQ and neither > this problem with TCG temps. So this other option is not very useful, right?