LuaJIT for autoplay mierda studio -> Lua 80-180% faster

Esta sección esta especialmente diseñada para todos aquellos usuarios que estés desarrollando plugins o aplicaciones y quieran ayuda para dichos plugins o aplicaciones.
133 mensajes
Imagen

Replace this the DLL Lua5.1.dll by this one to improve lua VM performance dramaticly. You can also remove lua51.dll since its useless (u can delete it even with original lua5.1.dll)

LuaJIT works way faster that normal Lua VM since is written in inline asm and instruction are faster due to redesigned architecture, but totally compatible with lua 5.1.4 and even have functions from lua 5.2 vm.

It also have some interesting stuff like dynasm and luaffi that allows you to call assambly code or use complex external libraries (like amswmemory, alien...)

DOWNLOAD
HIDE: ON
Hidebb Message Hidden Description


Ps. u can also replace this dll on autoplay/data folder in order to redistribute it with any future app build.

Ps2. This shit is highly experimental and untested, seems to work properly but may cause strange bugs, crashes and nuclear blasts

ACTUALIZACION LuaJIT 2.0.4

CHANGELOG

DESCARGA:
HIDE: ON
Hidebb Message Hidden Description

Stress test made to lua 5.1 vm and luaJIT

Imagen

test made with an empty for loop of the times in <test> value. Elapsed time operation is better when smaller (less time to process <test> operations.

Standard lua vm has been cutted off at 8 tests because of huge load time/crash. LuaJIT stopped at 10 for comparison propourses.

Imagen

Note that test is exponential, each test is last test ^ 10

This test have been made 100 times and values are mids of all returned values.

Its curious about the test 8, standard lua 5.1.4 vm needed 10.3 seconds but LuaJIT only needed 0.027, what means it take a 0.2% of the time the normal vm needs, what is an awesome performance incrase of 380% the normal processing speed

Imagen

No entiendo mucho este post, no me se muy bien ingles :sorry:

AYY DIOMIO

why 0.271 or 0.27 ---- 0.2 time fast 380 % plus

the measurement is in seconds, wich mean, a for operation for example the 10:

Código: Seleccionar todo

for count = 0, 50000000000 do
end
Taken 1093 seconds using lua vm, but only 6.7 seconds with luaJIT, wich is impressive
Buenas, como siempre muy bueno.
Bueno ya entendí el post, de hecho super interesante, dime Pabloko, cómo hago esa prueba de estrés, cual es el algoritmo de uso?.
Y para que quieres hacer pruebas de stress si ya lo he hecho yo y publicado los resultados?? ademas el codigo esta en mi ultimo post
t1=os.clock()
for count = 0, 50000000000 do end
timestamp = os.clock() - t1;
el objetivo de todo esto es simplemente sustituir la DLL de lua que os da autoplay por la mia y tener una velocidad de procesamiento mucho mayor
gracias
Este podría ser el mejor aporte en toda la historia de la historia del fucking foro.
He actualizado la mayoria de softwares que tengo que utilizan lua y los clientes me cuentan que es una mejora brutal en operaciones que normalmente tardan un poco, y de momento no se le han encontrado fallos.

He intentado que sea totalmente compatible con la libreria estandard y el archivo de libreria que utiliza, y como solo hay que sustituir una dll por otra es super sencillo de instalar.

Lo he probado lo suficiente para poder decir que es estable para entornos de produccion y que deberiais instalarlo por defecto sin duda.
Solamente hay que copiar la dll en
C:\Program Files (x86)\AutoPlay Media Studio 8\Data
Y automaticamente sera incluida en todos los proyectos

PS: Parece que es necesario tener instalado MSVRC 2008 (Suele venir por defecto desde xp sp1)
Pabloko escribió:He actualizado la mayoria de softwares que tengo que utilizan lua y los clientes me cuentan que es una mejora brutal en operaciones que normalmente tardan un poco, y de momento no se le han encontrado fallos.

He intentado que sea totalmente compatible con la libreria estandard y el archivo de libreria que utiliza, y como solo hay que sustituir una dll por otra es super sencillo de instalar.

Lo he probado lo suficiente para poder decir que es estable para entornos de produccion y que deberiais instalarlo por defecto sin duda.
Solamente hay que copiar la dll en
C:\Program Files (x86)\AutoPlay Media Studio 8\Data
Y automaticamente sera incluida en todos los proyectos

PS: Parece que es necesario tener instalado MSVRC 2008 (Suele venir por defecto desde xp sp1)
uNa pregunta, esta dll se sustituye sin mas al dll que viene al crear un proyecto o directamente me hace una copia desde esa ruta que has puesto?
Cuando generas o previsualizas un proyecto, se copia la dll que hay en esa ruta al proyecto, por eso simplemente copiando la mia ahi es suficiente para que ya siempre los proyectos se generen con la nueva dll
okey thanks for the info!
thanks
Thanks! Testing... :pc:
Aparte de ser mas rapido, estan incluidos los modulos bit y ffi.

Bit permite manejar memoria, pero la importante es ffi que permite utilizar librerias externas muy facilmente y con mucho mejor rendimiento.
local ffi = require("ffi")
ffi.cdef[[
int MessageBoxA(void *w, const char *txt, const char *cap, int type);
]]
ffi.C.MessageBoxA(nil, "Hello world!", "Test", 0)
aqui una lista de modulos especificos por ffi

Por ejemplo, control total de win32 (winapi), bases de datos Sqlite3 o MySql entre muchas otras, mas todo lo que se puede utilizar, ademas de incremento de velocidad

Imagen
gracias
muy buen aporte. Gracias!
133 mensajes