This commit is contained in:
Maxime Chevalier-Boisvert 2021-02-18 17:26:42 -05:00 коммит произвёл Alan Wu
Родитель 1279236ff8
Коммит 701a802a42
1 изменённых файлов: 30 добавлений и 0 удалений

30
doc/ujit.md Normal file
Просмотреть файл

@ -0,0 +1,30 @@
MicroJIT (uJIT)
===============
MicroJIT is a lightweight, minimalistic Ruby JIT built inside the CRuby/MRI binary.
It lazily compiles code using a Basic Block Versioning (BBV) architecture and generates x86-64 code. The target use case is that of servers running
Ruby on Rails, an area where CRuby's MJIT has not yet managed to deliver speedups. We currently support only MacOS and Linux at this stage. This
project is open source and falls under the same license as CRuby.
## Installation
The uJIT `ruby` binary can be built with either GCC or Clang. We recommend enabling debug symbols so that assertions are enabled
```
autoconf
./configure cppflags=-DRUBY_DEBUG --prefix=$HOME/.rubies/ruby-microjit
make -j16 install
```
Once uJIT is built, you can either use `./miniruby` from within your build directory, or switch to the uJIT version of `ruby`
by using the `chruby` tool:
```
chruby ruby-microjit
```
## Source Code Organization
## Contributing
If you are interested in contributing to this project, please contact Maxime Chevalier [(@Love2Code) via twitter](https://twitter.com/Love2Code).