-
Notifications
You must be signed in to change notification settings - Fork 10
jtalbot/riposte
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Riposte, a fast interpreter and JIT for R. Justin Talbot <justintalbot@gmail.com> Zach Devito We only do development on OSX and Linux. It's unlikely that our JIT will work on Windows. Compiling riposte ----------------- 0. Install dependencies: `brew install boost` `brew install eigen` `brew install tre` `brew install pcre` `brew install gettext` (for libintl) `brew install xz` (for lzma) Note: If you use a different package system, you may need to change the directories in Riposte's Makefiles 1. Run `make release` in the riposte directory, or `make debug` for the debug version 2. Set RIPOSTE_HOME environment variable to the riposte directory 3. Execute ./riposte to start 4. To load R standard library Build R 3.2.1 from sources with ./configure --with-aqua=no --with-tcltk=no --with-x=no --with-cairo=no --with-ICU=no --enable-byte-compiled-packages=no --enable-strict-barrier=yes --enable-R-profiling=no Copy lib/libRblas.dylib and lib/libRlapack.dylib into Riposte's home directory Copy the contents of the library directory into Riposte's library directory In R-3.2.1/src/nmath/standalone, delete -DMATHLIB_STANDALONE from Makefile, do make shared Copy src/nmath/standalone/libRmath.dylib into Riposte's home directory Flags ----- -j # : start with # worker threads (defaults to 1, set to the number of cores on your machine) -f <filename> : execute R script in <filename> -v : verbose debug output for the vector trace recorder and JIT Limitations ----------- Riposte is in heavy development. Many things haven't been implemented and many things have been implemented incorrectly. Use with caution. Fixes welcome. License ------- Riposte itself is distributed under the BSD 2-clause license <http://www.opensource.org/licenses/bsd-license.php>. Riposte depends on the following libraries: * Eigen (http://eigen.tuxfamily.org) under the MPL2 license (http://www.mozilla.org/MPL/2.0/) * Linenoise (https://github.com/antirez/linenoise/) under a BSD license * dyncall (http://dyncall.org) under a very liberal license * tre (http://laurikari.net/tre/) under a 2-clause BSD license Riposte uses the following under the LGPL: * R header files (in the include directory) * GNU implementation of printf-parser (in library/core/src) Testing ------- Riposte comes with a growing set of validation tests that compare the output of Riposte to standard R. Run `make tests` to run all the tests (R must be installed). No output indicates all tests passed. Run `make tests/path/to/test` to execute a single test and print its diff.
About
a fast interpreter and JIT for R
Resources
Stars
Watchers
Forks
Packages 0
No packages published