Mercurial > hg > truffle
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> |