2009-12-08 18:46:35 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
< html >
< head >
< title > LuaJIT< / title >
< meta http-equiv = "Content-Type" content = "text/html; charset=iso-8859-1" >
< meta name = "Author" content = "Mike Pall" >
2011-01-09 16:12:53 +00:00
< meta name = "Copyright" content = "Copyright (C) 2005-2011, Mike Pall" >
2009-12-08 18:46:35 +00:00
< meta name = "Language" content = "en" >
< link rel = "stylesheet" type = "text/css" href = "bluequad.css" media = "screen" >
< link rel = "stylesheet" type = "text/css" href = "bluequad-print.css" media = "print" >
2009-12-08 19:35:29 +00:00
< meta name = "description" content = "LuaJIT is a Just-In-Time (JIT) compiler for the Lua language." >
2009-12-08 18:46:35 +00:00
< / head >
< body >
< div id = "site" >
< a href = "http://luajit.org" > < span > Lua< span id = "logo" > JIT< / span > < / span > < / a >
< / div >
< div id = "head" >
< h1 > LuaJIT< / h1 >
< / div >
< div id = "nav" >
< ul > < li >
< a class = "current" href = "luajit.html" > LuaJIT< / a >
< ul > < li >
< a href = "install.html" > Installation< / a >
< / li > < li >
< a href = "running.html" > Running< / a >
2010-11-09 17:11:35 +00:00
< / li > < / ul >
< / li > < li >
< a href = "extensions.html" > Extensions< / a >
< ul > < li >
2011-01-20 21:14:17 +00:00
< a href = "ext_ffi.html" > FFI Library< / a >
< ul > < li >
< a href = "ext_ffi_tutorial.html" > FFI Tutorial< / a >
< / li > < li >
< a href = "ext_ffi_api.html" > ffi.* API< / a >
< / li > < li >
< a href = "ext_ffi_semantics.html" > FFI Semantics< / a >
< / li > < / ul >
< / li > < li >
2010-11-09 17:11:35 +00:00
< a href = "ext_jit.html" > jit.* Library< / a >
2009-12-08 18:46:35 +00:00
< / li > < li >
2010-11-09 17:11:35 +00:00
< a href = "ext_c_api.html" > Lua/C API< / a >
2009-12-08 18:46:35 +00:00
< / li > < / ul >
< / li > < li >
< a href = "status.html" > Status< / a >
< ul > < li >
< a href = "changes.html" > Changes< / a >
< / li > < / ul >
< / li > < li >
< a href = "faq.html" > FAQ< / a >
< / li > < li >
2010-03-19 20:01:14 +00:00
< a href = "http://luajit.org/performance.html" > Performance < span class = "ext" > » < / span > < / a >
< / li > < li >
2009-12-08 18:46:35 +00:00
< a href = "http://luajit.org/download.html" > Download < span class = "ext" > » < / span > < / a >
< / li > < / ul >
< / div >
< div id = "main" >
< p >
LuaJIT is a < b > Just-In-Time Compiler< / b > for the Lua< sup > *< / sup >
programming language.
< / p >
< p >
2011-01-09 16:12:53 +00:00
LuaJIT is Copyright © 2005-2011 Mike Pall.
2009-12-08 18:46:35 +00:00
LuaJIT is open source software, released under the
< a href = "http://www.opensource.org/licenses/mit-license.php" > < span class = "ext" > » < / span > MIT/X license< / a > .
< / p >
< p class = "indent" style = "color: #606060;" >
* Lua is a powerful, dynamic and light-weight programming language
designed for extending applications. Lua is also frequently used as a
general-purpose, stand-alone language. More information about
Lua can be found at: < a href = "http://www.lua.org/" > < span class = "ext" > » < / span > http://www.lua.org/< / a >
< / p >
< h2 > Compatibility< / h2 >
< p >
LuaJIT implements the full set of language features defined by Lua 5.1.
The virtual machine (VM) is < b > API- and ABI-compatible< / b > to the
standard Lua interpreter and can be deployed as a drop-in replacement.
< / p >
< p >
LuaJIT offers more performance, at the expense of portability. It
2010-03-04 18:07:38 +00:00
currently runs on all popular operating systems based on
2010-10-04 23:36:54 +00:00
< b > x86< / b > or < b > x64 CPUs< / b > (Linux, Windows, OSX etc.) or embedded Linux
systems based on < b > PPC/e500v2 CPUs< / b > .
2010-01-17 21:02:13 +00:00
Other platforms will be supported in the future, based on user demand
and sponsoring.
2009-12-08 18:46:35 +00:00
< / p >
< h2 > Overview< / h2 >
< p >
LuaJIT has been successfully used as a < b > scripting middleware< / b > in
games, 3D modellers, numerical simulations, trading platforms and many
other specialty applications. It combines high flexibility with high
performance and an unmatched < b > low memory footprint< / b > : less than
2010-10-04 23:36:54 +00:00
< b > 120K< / b > for the VM plus less than < b > 80K< / b > for the JIT compiler (on x86).
2009-12-08 18:46:35 +00:00
< / p >
< p >
LuaJIT has been in continuous development since 2005. It's widely
considered to be < b > one of the fastest dynamic language
implementations< / b > . It has outperfomed other dynamic languages on many
cross-language benchmarks since its first release — often by a
2010-02-16 23:47:55 +00:00
substantial margin. In 2009 other dynamic language VMs started to catch up
with the performance of LuaJIT 1.x. Well, I couldn't let that slide. ;-)
2009-12-08 18:46:35 +00:00
< / p >
< p >
2009 also marks the first release of the long-awaited < b > LuaJIT 2.0< / b > .
The whole VM has been rewritten from the ground up and relentlessly
optimized for performance. It combines a high-speed interpreter,
written in assembler, with a state-of-the-art JIT compiler.
< / p >
< p >
An innovative < b > trace compiler< / b > is integrated with advanced,
SSA-based optimizations and a highly tuned code generation backend. This
allows a substantial reduction of the overhead associated with dynamic
2010-10-04 23:36:54 +00:00
language features.
< / p >
< p >
It's destined to break into the < a href = "http://luajit.org/performance.html" > < span class = "ext" > » < / span > performance< / a >
range traditionally reserved for offline, static language compilers.
2011-02-10 02:10:38 +00:00
Have look at these < a href = "http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=all&d=data&calc=calculate&gpp=on&java=on&luajit=on&v8=on&lua=on&tracemonkey=on&box=1" > < span class = "ext" > » < / span > cross-language benchmarks< / a >
2010-10-04 23:36:54 +00:00
to see how it ranks against the competition.
2009-12-08 18:46:35 +00:00
< / p >
< h2 > More ...< / h2 >
< p >
Click on the LuaJIT sub-topics in the navigation bar to learn more
about LuaJIT.
< / p >
< p > < p >
Click on the Logo in the upper left corner to visit
the LuaJIT project page on the web. All other links to online
resources are marked with a '< span class = "ext" > » < / span > '.
< / p >
< br class = "flush" >
< / div >
< div id = "foot" >
< hr class = "hide" >
2011-01-09 16:12:53 +00:00
Copyright © 2005-2011 Mike Pall
2009-12-08 18:46:35 +00:00
< span class = "noprint" >
·
< a href = "contact.html" > Contact< / a >
< / span >
< / div >
< / body >
< / html >