-
Add Graal JIT Compilation to Your JVM Language in 5 Steps, A Tutorial http://stefan-marr.de/2015/11/add-graal-jit-compilation-to-your-jvm-language-in-5-easy-steps-step-1/
-
The SimpleLanguage, an example of using Truffle with great JavaDocs. It is the officle getting-started project: https://github.com/graalvm/simplelanguage
-
Truffle Tutorial, Christan Wimmer, PLDI 2016, 3h recording https://youtu.be/FJY96_6Y3a4 Slides
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
TABLE-OF-CONTENTS on ~/papers/phdthesis/Felgentreff_2015_Babelsberg.tex | |
SPC=view TAB=goto RET=goto+hide [q]uit [r]escan [l]abels [f]ollow [x]r [?]Help | |
------------------------------------------------------------------------------ | |
Part I Solving Constraints on Object Behavior | |
1 Introduction | |
1.1 Challenges | |
* Constraint Solvers are Non-deterministic ``Magic'' | |
* Object-oriented Imperative Programming is the Norm | |
* Solvers Are Highly Specialized | |
* Practical Performance Requires Trade-Offs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SplayTree;benchmarks.without.log;1;0.7674418604651163 | |
SplayTree;benchmarks.with.log;0.20116279069767443;0.012015503875968992 | |
SplayTree;benchmarks.cog.log;0.020387596899224807;0.0020930232558139536 | |
Compiler;benchmarks.without.log;1;0.09012464046021093 | |
Compiler;benchmarks.with.log;0.4995206136145734;0.01725790987535954 | |
Compiler;benchmarks.cog.log;0.016145733461169702;0.00014381591562799616 | |
Json;benchmarks.without.log;1;0.310580204778157 | |
Json;benchmarks.with.log;0.3993174061433447;0.10921501706484642 | |
Json;benchmarks.cog.log;0.049931740614334474;0.0034129692832764505 | |
ArrayAccess;benchmarks.without.log;1;0.0410958904109589 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SplayTree;1;0.7674418604651163;0.20116279069767443;0.012015503875968992;0.020387596899224807;0.0020930232558139536 | |
Compiler;1;0.09012464046021093;0.4995206136145734;0.01725790987535954;0.016145733461169702;0.00014381591562799616 | |
Json;1;0.310580204778157;0.3993174061433447;0.10921501706484642;0.049931740614334474;0.0034129692832764505 | |
ArrayAccess;1;0.0410958904109589;0.5110502283105023;0.007123287671232876;0.23726027397260274;0.001917808219178082 | |
ClassVarBinding;1;0.04855275443510738;0.49654528478057897;0.005243252448501502;0.07142857142857144;0.0011204481792717088 | |
FloatLoop;1;0.019064124783362217;0.4832755632582322;0.0026863084922010396;0.15008665511265165;0.0012998266897746966 | |
InstVarAccess;1;0.21551724137931036;0.5629310344827586;0.04741379310344828;0.06469827586206896;0.0006810344827586207 | |
IntLoop;1;0.04924242424242423;0.5075757575757576;0.005743805375949732;0.07282196969696969;0.0011363636363636363 | |
Send;1;0.05577689243027889;0.5345617529880479;0.005377116873062125;0.08197211155378487;0.0007470119521912352 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
reset | |
fontsize = 12 | |
set term pdf | |
set style fill solid 1.00 border 0 | |
set style histogram errorbars gap 2 lw 1 | |
set style data histogram | |
set xtics rotate by -45 | |
set grid ytics | |
set xlabel "Benchmarks" | |
set ylabel "Relative execution time vs. reference implementation" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require "mechanize" | |
url = "http://www.crossref.org/guestquery/" | |
bibfile = ARGV[0] | |
outfile = File.open(ARGV[1], 'w') || STDOUT | |
puts "Searching for #{bibfile}, writing to #{outfile}" | |
agent = Mechanize.new | |
page = agent.get url |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function Ping-IPRange { | |
<# | |
.EXAMPLE | |
Ping-IPRange -StartAddress 192.168.1.1 -EndAddress 192.168.1.254 -Interval 20 | |
.LINK | |
http://gallery.technet.microsoft.com/Fast-asynchronous-ping-IP-d0a5cf0e | |
#> | |
[CmdletBinding(ConfirmImpact='Low')] | |
Param( | |
[parameter(Mandatory = $true, Position = 0)] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[[MCMcmUpdater updateFromServer] | |
on: ProvideAnswerNotification | |
do: [:n | n resume: true]] | |
on: Warning | |
do: [:n | n resume: true]. | |
[(Installer squeak | |
project: 'VMMaker') | |
install: 'VMMaker.oscog'] on: Warning do: [:n | n resume: true]. | |
(Installer swasource | |
project: 'BenchmarkRunner') |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"These to:do: loops are not message sends, and are compiled | |
into comparisons and jump bytecodes. The inner loop is jitted, | |
the outer isn't, but we get a bridge that executes from the end of the inner loop | |
over the jump to the beginning of the inner loop" | |
i := 0. | |
1 to: 2000 do: [:a | | |
1 to: 1000 do: [:b | | |
i := i + b abs. | |
] | |
]. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Context context = Context.newBuilder("python"). | |
allowAllAccess(true). | |
option("python.ForceImportSite", "true"). | |
option("python.Executable", VENV_EXECUTABLE). | |
build(); |