lua-users home
lua-l archive

Re: Ravi performance update

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 15 July 2015 at 23:44, Paige DePol <lual@serfnet.org> wrote:
> Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>
>> Following points are worth bearing in mind when looking at above
>> benchmarks.
>>
>> 1. For Ravi the timings above do not include the LLVM compilation time.
>> But LuaJIT timings include the JIT compilation times, so they show
>> incredible performance.
>>
> In regards to the benchmarks, would it not be prudent to show the full time
> for Ravi, including compilation, in order to better compare the performance
> to LuaJIT? Otherwise, you've just provided some numbers without any actual
> relation to each other as we have no idea how long compilation is taking.
>
> Perhaps, if possible, show the full compilation and execution time for Ravi
> and LuaJIT, and then just the execution times for both? This would be an
> interesting benchmark I think as it would show the overhead for compilation
> for both languages!
>
I can tell you now that LLVM compilation is much slower than LuaJIT!
But for me this is not an issue as such as I intend to compile a
library of functions - and then use the library again and again, so
the compilation cost is one time only.
To be fair to LuaJIT I should try to remove the compilation time in
the comparisons - but I suspect the JIT compiler is so fast that it
will hardly make any difference. I will look into this.
Re LLVM compilation times - to give you some idea - the whole Lua test
suite (user mode) runs in less than 2 seconds in interpreter mode, but
when forced to compile every function in LLVM it takes nearly 2
minutes to run. So compiling functions willy nilly is not a good idea
when using LLVM.
I am also testing libgccjit - this is even slower than LLVM to
compile, as it creates temporary files. But the developer of libgccjit
is working on improving this (and eliminating the temporary files).
Regards
Dibyendu

AltStyle によって変換されたページ (->オリジナル) /