Truffle on-stack-replacement sometimes not working well with background compilation?

Christian Humer christian.humer at gmail.com
Thu Aug 4 19:56:07 UTC 2016


Hi Gerard,

Thanks for the report. Unfortunately I am unable to have a look at it 
right now, but I will asap.
Can you, in the meantime, provide me with some info on which version of 
graalvm/truffle you are using so I can try to reproduce?

Thanks,
Christian

On 04.08.2016 21:46:17, "Gerard Krol" <gerard at gerardkrol.nl> wrote:

>Hi,
>
>I've had some performance problems with Cover[1] and a specific 
>benchmark.
>Yesterday I finally figured out what was going on. The problem seems to 
>be
>that on-stack-replacement doesn't always work well with background
>compilation.
>
>The benchmark (fannkuch, [2])  did take 311 seconds to run, while the 
>GCC
>version would finish in 25 seconds. Warming up (running the benchmark 
>twice
>and timing the second run) would reduce the runtime to 47 seconds. I 
>like
>to run my benchmarks without warmup though, as that is a good 
>worst-case
>scenario.
>
>I then figured out that just adding
>-Dgraal.TruffleBackgroundCompilation=false made a huge difference. The 
>time
>needed was reduced to 52 seconds.
>
>Is this a bug? Expected behavior in some cases? Am I doing something 
>wrong?
>
>Reproduction:
>1. Get Cover from [1] (don't forget the 5th installation step)
>2. Run time ./cover tests/fannkuch-redux_gcc5.cover
>3. Run time ./cover -benchmark tests/fannkuch-redux_gcc5.cover (this 
>will
>disable the background compilation)
>
>Regards,
>
>Gerard
>
>[1] https://github.com/gerard-/cover
>[2]
>https://github.com/gerard-/cover/blob/master/tests/fannkuch-redux_gcc5.cover



More information about the graal-dev mailing list