[llvm-commits] [llvm jit adaptive-compilation] : Adaptive compilation framework x86 Patch
James Molloy
james.molloy at arm.com
Mon Jul 4 08:17:36 PDT 2011
Hi Xin,
What were the original numbers before adaptive compilation?
Cheers,
James
From: llvm-commits-bounces at cs.uiuc.edu
[mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Xin Tong Utoronto
Sent: 04 July 2011 16:14
To: llvm-commits at cs.uiuc.edu
Subject: [llvm-commits] [llvm jit adaptive-compilation] : Adaptive
compilation framework x86 Patch
Hi All
This patch is intended to provide support for LLVM JIT adaptive compilation
on x86 platforms. The implementation of the adaptive compilation framework
is one of the Google Summer of Code 2011 projects (
<http://www.google-melange.com/gsoc/project/google/gsoc2011/timexerox/8001>
http://www.google-melange.com/gsoc/project/google/gsoc2011/timexerox/8001).
The patch is created against the LLVM branch below. It is currently reviewed
by Eric Christoper at Apple and will be applied to the LLVM branch (
<https://echristo/> https://echristo@
<http://llvm.org/svn/llvm-project/llvm/branches/GSoC/adaptive-compilation>
llvm.org/svn/llvm-project/llvm/branches/GSoC/adaptive-compilation). But more
eyes are definitely welcome. Originally, the LLVM adaptive compilation
framework was intended to be applied to LLVM head stream, but due to
concerns regarding the upcoming major changes on ExecutionEngine and MCJIT.
it is now worked in a branch and hopefully applied to the head stream once
the MCJIT changes have been completed.
This patch involves changes to
include/llvm/Target/TargetJITInfo.h
lib/Target/X86/X86JITInfo.h
lib/Target/X86/X86JITInfo.cpp
lib/Target/ARM/ARMJITInfo.h
lib/Target/ARM/ARMJITInfo.cpp
lib/Target/PowerPC/PPCJITInfo.h
lib/Target/PowerPC/PPCJITInfo.cpp
lib/ExecutionEngine/JIT/JITEmitter.cpp
lib/ExecutionEngine/JIT/JIT.h
lib/ExecutionEngine/JIT/JIT.cpp
This was tested on x86 and x86-64 under Ubuntu with
llvm test-suite
There were no regressions for the O0 - O3 JIT compilation. Additionally,
adaptive compilation currently gives better performance numbers than O1 - O3
as shown.
lli -O0
Total Time is 1068.37
lli -O1
Total Time is 1395.68
lli -O2
Total Time is 1394.81
lli -O3
Total Time is 1395.76
lli -adaptive-comp
Total Time is 1119.23
Thank You
Xin Tong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20110704/4216c99a/attachment.html>
More information about the llvm-commits
mailing list