comparison truffle/overview.html @ 22440:55f59502cf31

Links to Add Graal JIT Compilation to Your JVM Language tutorial
author Jaroslav Tulach <jaroslav.tulach@oracle.com>
date Wed, 09 Dec 2015 17:44:06 +0100
parents ad67d348e361
children
comparison
equal deleted inserted replaced
22439:50baaa7da8e8 22440:55f59502cf31
39 <p> 39 <p>
40 To get the best speed out of your Truffle system, make sure you are running 40 To get the best speed out of your Truffle system, make sure you are running
41 on top of 41 on top of
42 <a target="_blank" href="http://openjdk.java.net/projects/graal/">Graal</a> 42 <a target="_blank" href="http://openjdk.java.net/projects/graal/">Graal</a>
43 virtual machine. 43 virtual machine.
44
45 <h4>Learning Truffle</h4>
46
44 <p> 47 <p>
45 Our typicial sample language is called the <em>SimpleLanguage</em>. 48 Our typical sample language is called the <em>SimpleLanguage</em>.
46 A good entry point for exploring <em>SimpleLanguage</em> is the 49 A good entry point for exploring <em>SimpleLanguage</em> is the
47 <a target="_blank" href="https://github.com/graalvm/Truffle/blob/master/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLLanguage.java">SLLanguage</a> 50 <a target="_blank" href="https://github.com/graalvm/Truffle/blob/master/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLLanguage.java">SLLanguage</a>
48 class. 51 class.
52 </p>
53
54 <p>
55 There is an excellent tutorial <em>Add Graal JIT Compilation to Your JVM Language</em>
56 written by Stefan Marr which gives real example of turning an existing language
57 into <em>Truffle</em> based one:
58 </p>
59 <ul>
60 <li>Step 1:
61 <a target="golo" href="http://stefan-marr.de/2015/11/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-1/">Setting a Goal and Choosing a Benchmark</a>
62 </li>
63 <li>Step 2:
64 <a target="golo" href="http://stefan-marr.de/2015/11/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-2/">Adding Bits Operations</a>
65 </li>
66 <li>Step 3:
67 <a target="golo" href="http://stefan-marr.de/2015/11/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-3/">Interpreting a Simple Fibonacci Function</a>
68 </li>
69 <li>Step 4:
70 <a target="golo" href="http://stefan-marr.de/2015/12/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-4/">Complete Support for Mandelbrot</a>
71 </li>
72 <li>Step 5:
73 <a target="golo" href="http://stefan-marr.de/2015/12/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-5/">Optimizing the Interpreter for Compilation</a>
74 </li>
75 </ul>
76 <p>
77 The posts cover not only basics, and API usage, but also description
78 of available tools for analyzing the performance and optimizing it.
79 </p>
49 80
50 <h4>Other References</h4> 81 <h4>Other References</h4>
51 82
52 <ul> 83 <ul>
53 <li><a target="_blank" href="https://wiki.openjdk.java.net/display/Graal/Publications+and+Presentations">Truffle Tutorials and Presentations</a></li> 84 <li><a target="_blank" href="https://wiki.openjdk.java.net/display/Graal/Publications+and+Presentations">Truffle Tutorials and Presentations</a></li>