This package is an interface to some of the functionality in the LLVM toolkit for programmatically constructing native code and also comprehensively analyzing native code. This allows us to build "compilers" in R and use LLVM's optmization and JIT techniques to improve the code we generate and then turn it into machine code. This is currently not a compiler. There are examples that illustrate how to generate code to create native functions that are equivalent to some simple R functions. The goal is to build on this and create a compiler, hopefully building on the framework that Luke Tierney has created in his compiler package (see http://www.cs.uiowa.edu/~luke/R/compiler/). This is in the RLLVCompile package. The speed up we achieve compiling R code in our examples illustrate that we can significantly outperform the R interpreter and also can outperform some of R's vectorized code by rearranging the computations, e.g. fusing loops, avoiding memory usage.
Package details |
|
---|---|
Author | Duncan Temple Lang, Vince Buffalo |
Maintainer | Duncan Temple Lang <duncan@r-project.org> |
License | GPL-2 |
Version | 0.14-0 |
URL | https://github.com/duncantl/Rllvm |
Package repository | View on GitHub |
Installation |
Install the latest version of this package by entering the following in R:
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.