luajit.html 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html>
  3. <head>
  4. <title>LuaJIT</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  6. <meta name="Author" content="Mike Pall">
  7. <meta name="Copyright" content="Copyright (C) 2005-2011, Mike Pall">
  8. <meta name="Language" content="en">
  9. <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen">
  10. <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print">
  11. <meta name="description" content="LuaJIT is a Just-In-Time (JIT) compiler for the Lua language.">
  12. </head>
  13. <body>
  14. <div id="site">
  15. <a href="http://luajit.org"><span>Lua<span id="logo">JIT</span></span></a>
  16. </div>
  17. <div id="head">
  18. <h1>LuaJIT</h1>
  19. </div>
  20. <div id="nav">
  21. <ul><li>
  22. <a class="current" href="luajit.html">LuaJIT</a>
  23. <ul><li>
  24. <a href="install.html">Installation</a>
  25. </li><li>
  26. <a href="running.html">Running</a>
  27. </li></ul>
  28. </li><li>
  29. <a href="extensions.html">Extensions</a>
  30. <ul><li>
  31. <a href="ext_ffi.html">FFI Library</a>
  32. <ul><li>
  33. <a href="ext_ffi_tutorial.html">FFI Tutorial</a>
  34. </li><li>
  35. <a href="ext_ffi_api.html">ffi.* API</a>
  36. </li><li>
  37. <a href="ext_ffi_semantics.html">FFI Semantics</a>
  38. </li></ul>
  39. </li><li>
  40. <a href="ext_jit.html">jit.* Library</a>
  41. </li><li>
  42. <a href="ext_c_api.html">Lua/C API</a>
  43. </li></ul>
  44. </li><li>
  45. <a href="status.html">Status</a>
  46. <ul><li>
  47. <a href="changes.html">Changes</a>
  48. </li></ul>
  49. </li><li>
  50. <a href="faq.html">FAQ</a>
  51. </li><li>
  52. <a href="http://luajit.org/performance.html">Performance <span class="ext">&raquo;</span></a>
  53. </li><li>
  54. <a href="http://luajit.org/download.html">Download <span class="ext">&raquo;</span></a>
  55. </li></ul>
  56. </div>
  57. <div id="main">
  58. <p>
  59. LuaJIT is a <b>Just-In-Time Compiler</b> for the Lua<sup>*</sup>
  60. programming language.
  61. </p>
  62. <p>
  63. LuaJIT is Copyright &copy; 2005-2011 Mike Pall.
  64. LuaJIT is open source software, released under the
  65. <a href="http://www.opensource.org/licenses/mit-license.php"><span class="ext">&raquo;</span>&nbsp;MIT/X license</a>.
  66. </p>
  67. <p class="indent" style="color: #606060;">
  68. * Lua is a powerful, dynamic and light-weight programming language
  69. designed for extending applications. Lua is also frequently used as a
  70. general-purpose, stand-alone language. More information about
  71. Lua can be found at: <a href="http://www.lua.org/"><span class="ext">&raquo;</span>&nbsp;http://www.lua.org/</a>
  72. </p>
  73. <h2>Compatibility</h2>
  74. <p>
  75. LuaJIT implements the full set of language features defined by Lua 5.1.
  76. The virtual machine (VM) is <b>API- and ABI-compatible</b> to the
  77. standard Lua interpreter and can be deployed as a drop-in replacement.
  78. </p>
  79. <p>
  80. LuaJIT offers more performance, at the expense of portability. It
  81. currently runs on all popular operating systems based on
  82. <b>x86</b> or <b>x64 CPUs</b> (Linux, Windows, OSX etc.) or embedded Linux
  83. systems based on <b>PPC/e500v2 CPUs</b>.
  84. Other platforms will be supported in the future, based on user demand
  85. and sponsoring.
  86. </p>
  87. <h2>Overview</h2>
  88. <p>
  89. LuaJIT has been successfully used as a <b>scripting middleware</b> in
  90. games, 3D modellers, numerical simulations, trading platforms and many
  91. other specialty applications. It combines high flexibility with high
  92. performance and an unmatched <b>low memory footprint</b>: less than
  93. <b>120K</b> for the VM plus less than <b>80K</b> for the JIT compiler (on x86).
  94. </p>
  95. <p>
  96. LuaJIT has been in continuous development since 2005. It's widely
  97. considered to be <b>one of the fastest dynamic language
  98. implementations</b>. It has outperformed other dynamic languages on many
  99. cross-language benchmarks since its first release &mdash; often by a
  100. substantial margin. In 2009 other dynamic language VMs started to catch up
  101. with the performance of LuaJIT 1.x. Well, I couldn't let that slide. ;-)
  102. </p>
  103. <p>
  104. 2009 also marks the first release of the long-awaited <b>LuaJIT 2.0</b>.
  105. The whole VM has been rewritten from the ground up and relentlessly
  106. optimized for performance. It combines a high-speed interpreter,
  107. written in assembler, with a state-of-the-art JIT compiler.
  108. </p>
  109. <p>
  110. An innovative <b>trace compiler</b> is integrated with advanced,
  111. SSA-based optimizations and a highly tuned code generation backend. This
  112. allows a substantial reduction of the overhead associated with dynamic
  113. language features.
  114. </p>
  115. <p>
  116. It's destined to break into the <a href="http://luajit.org/performance.html"><span class="ext">&raquo;</span>&nbsp;performance</a>
  117. range traditionally reserved for offline, static language compilers.
  118. Have look at these <a href="http://shootout.alioth.debian.org/u32/benchmark.php?test=all&amp;lang=all&amp;d=data&amp;calc=calculate&amp;gpp=on&amp;java=on&amp;luajit=on&amp;v8=on&amp;lua=on&amp;tracemonkey=on&amp;box=1"><span class="ext">&raquo;</span>&nbsp;cross-language benchmarks</a>
  119. to see how it ranks against the competition.
  120. </p>
  121. <h2>More ...</h2>
  122. <p>
  123. Click on the LuaJIT sub-topics in the navigation bar to learn more
  124. about LuaJIT.
  125. </p>
  126. <p><p>
  127. Click on the Logo in the upper left corner to visit
  128. the LuaJIT project page on the web. All other links to online
  129. resources are marked with a '<span class="ext">&raquo;</span>'.
  130. </p>
  131. <br class="flush">
  132. </div>
  133. <div id="foot">
  134. <hr class="hide">
  135. Copyright &copy; 2005-2011 Mike Pall
  136. <span class="noprint">
  137. &middot;
  138. <a href="contact.html">Contact</a>
  139. </span>
  140. </div>
  141. </body>
  142. </html>