[Tarantool-patches] [PATCH v3 0/2] Implement LuaJIT platform metrics
Sergey Kaplun
skaplun at tarantool.org
Sun Sep 20 20:12:47 MSK 2020
The series consists of 2 patches. The first one adds corresponding
counters to LuaJIT internal structures. The second provides C and Lua
API using this counters to collect metrics.
Branch: https://github.com/tarantool/luajit/tree/skaplun/gh-5187-luajit-metrics
Issue: https://github.com/tarantool/tarantool/issues/5187
Changes in v2:
- Fixed naming and comments
- Fixed padding in struct GCState
- Dropped unnecessary initialisations inside lua_newstate()
- Avoided flushing any of metrics after each call of luaM_metrics()
Changes in v3:
- Cleaned up mess in Makefile.dep
- Fixed naming and comments
- Fixed padding in struct GCState for 64-bit architectures
- Fixed counting amount of JIT traces
- Fixed objects counting at trace recording
- Added counting of colors
- Added C and Lua tests
Sergey Kaplun (2):
core: introduce various platform metrics
misc: add C and Lua API for platform metrics
Makefile | 2 +-
src/Makefile | 5 +-
src/Makefile.dep | 14 +-
src/lib_init.c | 2 +
src/lib_misc.c | 76 +++
src/lj_asm.c | 2 +
src/lj_asm_arm.h | 19 +
src/lj_asm_arm64.h | 19 +
src/lj_asm_mips.h | 10 +
src/lj_asm_ppc.h | 9 +
src/lj_asm_x86.h | 10 +
src/lj_cdata.c | 9 +
src/lj_cdata.h | 2 +
src/lj_gc.c | 99 +++-
src/lj_gc.h | 33 +-
src/lj_jit.h | 3 +
src/lj_mapi.c | 65 +++
src/lj_obj.h | 31 +-
src/lj_snap.c | 1 +
src/lj_state.c | 7 +-
src/lj_str.c | 5 +
src/lj_tab.c | 2 +
src/lj_trace.c | 6 +-
src/lj_udata.c | 2 +
src/ljamalg.c | 2 +
src/lmisclib.h | 71 +++
src/luaconf.h | 1 +
src/vm_arm.dasc | 6 +
src/vm_arm64.dasc | 6 +
src/vm_mips.dasc | 6 +
src/vm_mips64.dasc | 6 +
src/vm_ppc.dasc | 6 +
src/vm_x64.dasc | 2 +
src/vm_x86.dasc | 2 +
test/clib-misclib-getmetrics.test.lua | 188 +++++++
test/clib-misclib-getmetrics/CMakeLists.txt | 1 +
test/clib-misclib-getmetrics/testgetmetrics.c | 287 +++++++++++
test/lib-misc-getmetrics.test.lua | 459 ++++++++++++++++++
38 files changed, 1433 insertions(+), 43 deletions(-)
create mode 100644 src/lib_misc.c
create mode 100644 src/lj_mapi.c
create mode 100644 src/lmisclib.h
create mode 100755 test/clib-misclib-getmetrics.test.lua
create mode 100644 test/clib-misclib-getmetrics/CMakeLists.txt
create mode 100644 test/clib-misclib-getmetrics/testgetmetrics.c
create mode 100755 test/lib-misc-getmetrics.test.lua
--
2.28.0
More information about the Tarantool-patches
mailing list