[Tarantool-patches] [PATCH luajit v4 0/7] misc: introduce sysprof

Maxim Kokryashkin max.kokryashkin at gmail.com
Wed Apr 13 23:36:06 MSK 2022


Changes in v4:
- Fixed comments as per review by Sergey

Maxim Kokryashkin (4):
  memprof: move symtab to a separate module
  memprof: add profile common section
  sysprof: introduce Lua API
  tools: introduce parsers for sysprof

Mikhail Shishatskiy (3):
  vm: save topframe info into global_State
  core: separate the profiling timer from lj_profile
  core: introduce lua and platform profiler

 .gitignore                                    |   1 +
 CMakeLists.txt                                |   6 +
 src/CMakeLists.txt                            |   3 +
 src/Makefile.dep.original                     |  51 +-
 src/Makefile.original                         |   6 +-
 src/lib_misc.c                                | 263 ++++++++-
 src/lj_arch.h                                 |  11 +
 src/lj_errmsg.h                               |   2 +-
 src/lj_mapi.c                                 |  26 +
 src/lj_memprof.c                              |  82 +--
 src/lj_memprof.h                              |  49 +-
 src/lj_obj.h                                  |   1 +
 src/lj_profile.c                              | 176 +-----
 src/lj_profile_timer.c                        | 133 +++++
 src/lj_profile_timer.h                        |  83 +++
 src/lj_state.c                                |   7 +
 src/lj_symtab.c                               |  84 +++
 src/lj_symtab.h                               |  65 +++
 src/lj_sysprof.c                              | 530 ++++++++++++++++++
 src/lj_sysprof.h                              |  93 +++
 src/ljamalg.c                                 |   2 +
 src/lmisclib.h                                |  95 ++++
 src/vm_x64.dasc                               |  38 +-
 src/vm_x86.dasc                               |  41 +-
 test/tarantool-tests/CMakeLists.txt           |   1 +
 .../misclib-sysprof-capi.test.lua             |  52 ++
 .../misclib-sysprof-capi/CMakeLists.txt       |   1 +
 .../misclib-sysprof-capi/testsysprof.c        | 272 +++++++++
 .../misclib-sysprof-lapi.test.lua             | 120 ++++
 tools/CMakeLists.txt                          |  83 +++
 tools/luajit-parse-sysprof.in                 |   6 +
 tools/sysprof.lua                             | 119 ++++
 tools/sysprof/collapse.lua                    | 113 ++++
 tools/sysprof/parse.lua                       | 188 +++++++
 tools/utils/symtab.lua                        |   2 +-
 35 files changed, 2446 insertions(+), 359 deletions(-)
 create mode 100644 src/lj_profile_timer.c
 create mode 100644 src/lj_profile_timer.h
 create mode 100644 src/lj_symtab.c
 create mode 100644 src/lj_symtab.h
 create mode 100644 src/lj_sysprof.c
 create mode 100644 src/lj_sysprof.h
 create mode 100644 test/tarantool-tests/misclib-sysprof-capi.test.lua
 create mode 100644 test/tarantool-tests/misclib-sysprof-capi/CMakeLists.txt
 create mode 100644 test/tarantool-tests/misclib-sysprof-capi/testsysprof.c
 create mode 100644 test/tarantool-tests/misclib-sysprof-lapi.test.lua
 create mode 100644 tools/luajit-parse-sysprof.in
 create mode 100644 tools/sysprof.lua
 create mode 100755 tools/sysprof/collapse.lua
 create mode 100755 tools/sysprof/parse.lua

--
2.35.1



More information about the Tarantool-patches mailing list