2 ms·
BeamASM vs HiPE? Since BeamASM doesn't support HiPE - has anyone seen benchmarks of BeamASM (JIT) vs HiPE. I've searched and searched and can't find such analy
by tiffanyh 5y ago
BeamASM vs HiPE?
Since BeamASM doesn't support HiPE - has anyone seen benchmarks of BeamASM (JIT) vs HiPE. I've searched and searched and can't find such analysis.
(Super excited the JIT work is seeing light after 10+ years)
- ergl 5y agoHiPE support is getting wonky, I don't know if many people use it, and I'm not sure it supports the latest OTP versions. The Erlang folks are looking for maintainer volunteers to continue working on HiPE support, they don't have the manpower right now to maintain it themselves.
- ch4s3 5y agoI believe HiPE is going away in the future.
- toast0 5y agoI'm not sure if there's a point in the history where you can run with (this) JIT or with HiPE on the same commit. Which makes an apples to apples comparison difficult. If you compare HiPE on OTP 23 with JIT on OTP 24, you're also getting the large amount of other changes as well. Both HiPE and this JIT have drastically different improvements depending on the specific code that's running, which makes it challenging to have a real world benchmark as well.
- ramchip 5y agoThere's a comment here: https://blog.erlang.org/the-road-to-the-jit/#maturing-the-new-jit https://blog.erlang.org/the-road-to-the-jit/#maturing-the-ne... I feel like I saw graphs in one of the presentations, but I don't recall which, or if it was about the final iteration of the JIT. I suspect HiPE would beat the JIT on tight loops, but the JIT wins in general because of the lack of switching cost between native and interpreted code.
- igouy 5y agofwiw elapsed seconds Erlang/OTP 23 [erts-11.1] [hipe] Erlang/OTP 24 [erts-12.0] [jit] binarytrees,hipe,1,7.531 binarytrees,erlang,1,11.768 binarytrees,hipe,2,4.172 binarytrees,erlang,2,5.149 fannkuchredux,hipe,1,59.079 fannkuchredux,erlang,1,73.151 fasta,hipe,1,57.006 fasta,erlang,1,50.843 fasta,erlang,2,20.209 knucleotide,hipe,1,92.662 knucleotide,erlang,1,80.360 knucleotide,hipe,3,86.793 knucleotide,erlang,3,70.949 mandelbrot,hipe,1,118.623 mandelbrot,erlang,1,48.756 mandelbrot,hipe,2,101.211 mandelbrot,erlang,2,46.154 mandelbrot,hipe,3,87.793 mandelbrot,erlang,3,44.633 mandelbrot,hipe,4,84.878 mandelbrot,erlang,4,44.976 nbody,hipe,3,140.025 nbody,erlang,3,100.630 pidigits,hipe,1,8.791 pidigits,erlang,1,8.008 pidigits,hipe,2,8.515 pidigits,erlang,2,8.673 pidigits,hipe,3,7.935 pidigits,erlang,3,7.748 regexredux,hipe,6,42.757 regexredux,erlang,40.402 revcomp,hipe,1,25.622 revcomp,erlang,1,23.070 revcomp,hipe,3,188.990 revcomp,erlang,3,155.024 revcomp,hipe,4,122.507 revcomp,erlang,4,106.456 spectralnorm,hipe,1,92.347 spectralnorm,erlang,1,62.519 spectralnorm,hipe,2,11.176 spectralnorm,erlang,2,11.460 https://benchmarksgame-team.pages.debian.net/benchmarksgame/measurements/erlang.html https://benchmarksgame-team.pages.debian.net/benchmarksgame/...