[Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)

Konstantin Osipov kostja.osipov at gmail.com
Fri Nov 29 08:41:07 MSK 2019


* Igor Munkin <imun at tarantool.org> [19/11/28 21:39]:

> Great, we discussed with Leonid and Sasha offline and agreed to make
> several benchmarks to be provided in this thread. With no benchmarks all
> our estimates can be simply wrong.

For benchmarks, it is always good to refresh them but since you've
been working with LuaJIT for a while you must know some of 
the conclusions already:

* JITed code can be 5-8x faster than Lua + Lua/C
* FFI is 1.5-2x slower than Lua/C in non-JIT mode. So using FFI
  is an extra cost if JIT is OFF.
* The way traces are collected, cached and stored has its own
  overhead, so JIT ON can be harmful to performance if Lua code
  base gets big.

In practice, for Tarantool apps, I found all of the above to not
have much impact. The #1 cause of performance slowdown in
Tarantool apps is boxing/unboxing Tarantool tuples and garbage
collection.

So to measure the real impact of the change, micro-benchmarking
is insufficient. One has to use run e.g. vshard or data
grid or other complex app stress test with wal_mode=off to 
see the effect of such change.

-- 
Konstantin Osipov, Moscow, Russia


More information about the Tarantool-patches mailing list