[LLVMdev] Performance vs other VMs

BGB cr88192 at hotmail.com
Fri Jan 30 18:17:31 PST 2009


----- Original Message ----- 
From: "Jon Harrop" <jon at ffconsultancy.com>
To: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>
Sent: Saturday, January 31, 2009 6:56 AM
Subject: [LLVMdev] Performance vs other VMs


>
> The release of a new code generator in Mono 2.2 prompted me to benchmark 
> the
> performance of various VMs using the SciMark2 benchmark on an 8x 2.1GHz
> 64-bit Opteron and I have published the results here:
>
>  http://flyingfrogblog.blogspot.com/2009/01/mono-22.html
>
> The LLVM results were generated using llvm-gcc 4.2.1 on the C version of
> SciMark2 with the following command-line options:
>
>  llvm-gcc -Wall -lm -O2 -funroll-loops *.c -o scimark2
>
> Mono was up to 12x slower than LLVM before and is now only 2.2x slower on
> average. Interestingly, the JVM scores slightly higher than LLVM on this
> benchmark on average and beats LLVM on two of the five individual tests.
>
> The individual scores are particularly enlightening. Specifically:
>
> . LLVM outperforms all other VMs by a significant margin on FFT, Monte 
> Carlo
> and sparse matrix multiply.
>
> . LLVM is beaten by the JVM on successive over-relaxation (SOR) and LU
> decomposition.
>
> In the context of the SOR test, I suspect the JVM is using alias 
> information
> to perform optimizations that LLVM and llvm-gcc probably do not do.
>
> I am not sure what causes the performance discrepancy on LU. Perhaps the 
> JVM
> is generating SSE instructions. Does llvm-gcc generate SSE instructions 
> under
> any circumstances?
>

interesting, but can you add plain C compiled with the good old-fashined GCC 
or similar to serve as a point of reference as well?...


> -- 
> Dr Jon Harrop, Flying Frog Consultancy Ltd.
> http://www.ffconsultancy.com/?e
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 




More information about the llvm-dev mailing list