Tarantool development patches archive
 help / color / mirror / Atom feed
From: Konstantin Osipov <kostja.osipov@gmail.com>
To: Igor Munkin <imun@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)
Date: Fri, 29 Nov 2019 08:41:07 +0300	[thread overview]
Message-ID: <20191129054107.GF15149@atlas> (raw)
In-Reply-To: <20191128183615.GC1214@tarantool.org>

* Igor Munkin <imun@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

  parent reply	other threads:[~2019-11-29  9:09 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-26 13:13 Leonid
2019-11-26 21:05 ` Konstantin Osipov
2019-11-26 21:17   ` Alexander Turenko
2019-11-27  8:31     ` Konstantin Osipov
2019-11-28  8:10       ` Leonid Vasiliev
2019-11-28 12:34         ` Konstantin Osipov
2019-11-28 13:00           ` Igor Munkin
2019-11-28 13:18             ` Konstantin Osipov
2019-11-28 14:03               ` Igor Munkin
2019-11-28 15:58                 ` Konstantin Osipov
2019-11-28 18:36                   ` Igor Munkin
2019-11-29  5:30                     ` Konstantin Osipov
2019-11-29 17:43                       ` Igor Munkin
2019-11-29  5:41                     ` Konstantin Osipov [this message]
2019-11-29 17:37                       ` Igor Munkin
2019-12-04 13:05                     ` Leonid Vasiliev
2019-12-04 13:15                       ` Konstantin Osipov
2019-12-05  8:27                         ` Leonid Vasiliev
2020-03-20 18:48               ` Igor Munkin
2020-03-20 19:27                 ` Konstantin Osipov
2019-12-11 22:21 ` Alexander Turenko
2019-12-12  8:23   ` Leonid Vasiliev
2020-01-15 17:05     ` Alexander Turenko
2019-12-12  8:49   ` Konstantin Osipov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191129054107.GF15149@atlas \
    --to=kostja.osipov@gmail.com \
    --cc=imun@tarantool.org \
    --cc=tarantool-patches@dev.tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox