<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.CodeBlock, li.CodeBlock, div.CodeBlock
        {mso-style-name:"Code Block";
        margin:0in;
        margin-bottom:.0001pt;
        background:#F2F2F2;
        border:none;
        padding:0in;
        font-size:11.0pt;
        font-family:Consolas;}
p.MailQuote, li.MailQuote, div.MailQuote
        {mso-style-name:"Mail Quote";
        margin:0in;
        margin-bottom:.0001pt;
        border:none;
        padding:0in;
        font-size:9.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-family:Consolas">We have been using LLVM 3.4 and are currently migrating to LLVM 3.8.1. We have been using the Old JIT and since it has been removed since 3.6, we have to use MCJIT. I find that run-time performance is
 very poor in 3.8.1 for the Fibonacci example in llvm/examples/fibonacci.cpp. Logs below for fib34 and fib381 for input values of 30 and 40. I first thought it could be that MCJIT compile time is slower, but as I increase the input value, fib381 gets slower
 and slower in run-time performance (almost 200X for an input value of 40). Any hints on what could be going wrong? TIA.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-family:Consolas">% time fib34 30<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-family:Consolas">…<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">starting fibonacci(30) with JIT...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">Result: 832040<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">0.008u 0.000s 0:00.01 0.0%      0+0k 0+0io 0pf+0w<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-family:Consolas">% time fib34 40<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-family:Consolas">…<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">starting fibonacci(40) with JIT...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">Result: 102334155<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">0.427u 0.003s 0:00.44 95.4%     0+0k 0+0io 0pf+0w<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-family:Consolas">% time fib381 30<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-family:Consolas">…<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">starting fibonacci(30) with JIT...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">Result: 832040<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">0.795u 0.001s 0:00.81 97.5%     0+0k 0+0io 0pf+0w<o:p></o:p></span></p>
<p class="MsoNormal"><b><span style="font-family:Consolas">% time fib381 40<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-family:Consolas">…<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">starting fibonacci(40) with JIT...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">Result: 102334155<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:Consolas">97.591u 0.006s 1:37.71 99.8%    0+0k 0+0io 0pf+0w<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Compile command used for each version (Platform: Linux 2.6.32-504.16.2.el6.x86_64):<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">clang++ -std=c++11 fibonacci.cpp `llvm-config --cxxflags --ldflags --libs` -ldl -lpthread -lncurses -o fib381<o:p></o:p></p>
<p class="MsoNormal">clang++ fibonacci.cpp `llvm-config --cxxflags --ldflags --libs` -o fib34<o:p></o:p></p>
</div>
</body>
</html>