From: Sergey Bronnikov via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: tarantool-patches@dev.tarantool.org,
Sergey Kaplun <skaplun@tarantool.org>
Subject: [Tarantool-patches] [PATCH luajit 5/7] ci: add workflow with disabled profilers
Date: Thu, 13 Feb 2025 14:10:47 +0300 [thread overview]
Message-ID: <4defed95d90fee0536d841337b134220d493823e.1739444510.git.sergeyb@tarantool.org> (raw)
In-Reply-To: <cover.1739444510.git.sergeyb@tarantool.org>
Needed for the following commit.
---
.github/workflows/exotic-builds-testing.yml | 6 +++++-
test/tarantool-tests/CMakeLists.txt | 4 ++++
.../gh-5994-memprof-human-readable.test.lua | 1 +
.../profilers/misclib-memprof-lapi.test.lua | 15 ++++++++-------
4 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/exotic-builds-testing.yml b/.github/workflows/exotic-builds-testing.yml
index 374c879b..70b55423 100644
--- a/.github/workflows/exotic-builds-testing.yml
+++ b/.github/workflows/exotic-builds-testing.yml
@@ -34,7 +34,7 @@ jobs:
BUILDTYPE: [Debug, Release]
ARCH: [ARM64, x86_64]
GC64: [ON, OFF]
- FLAVOR: [checkhook, dualnum, dynamic, gdbjit, nojit, nounwind, tablebump]
+ FLAVOR: [checkhook, dualnum, dynamic, gdbjit, nojit, nounwind, tablebump, noprof]
include:
- BUILDTYPE: Debug
CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON
@@ -54,6 +54,8 @@ jobs:
FLAVORFLAGS: -DLUAJIT_NO_UNWIND=ON
- FLAVOR: tablebump
FLAVORFLAGS: -DLUAJIT_ENABLE_TABLE_BUMP=ON
+ - FLAVOR: noprof
+ FLAVORFLAGS: -DLUAJIT_DISABLE_MEMPROF=ON -DLUAJIT_DISABLE_SYSPROF=ON
exclude:
- ARCH: ARM64
GC64: OFF
@@ -72,6 +74,8 @@ jobs:
# (`DASM_S_RANGE_I`).
- FLAVOR: tablebump
ARCH: ARM64
+ - FLAVOR: noprof
+ ARCH: ARM64
runs-on: [self-hosted, regular, Linux, '${{ matrix.ARCH }}']
name: >
LuaJIT ${{ matrix.FLAVOR }}
diff --git a/test/tarantool-tests/CMakeLists.txt b/test/tarantool-tests/CMakeLists.txt
index 9bacac88..a6d09dc7 100644
--- a/test/tarantool-tests/CMakeLists.txt
+++ b/test/tarantool-tests/CMakeLists.txt
@@ -97,6 +97,10 @@ if(LUAJIT_DISABLE_SYSPROF)
list(APPEND LUA_TEST_ENV_MORE LUAJIT_DISABLE_SYSPROF=1)
endif()
+if(LUAJIT_DISABLE_MEMPROF)
+ list(APPEND LUA_TEST_ENV_MORE LUAJIT_DISABLE_MEMPROF=1)
+endif()
+
# Needed to skip some long tests or tests using signals.
# See also https://github.com/tarantool/tarantool/issues/10803.
if(LUAJIT_USE_VALGRIND)
diff --git a/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua b/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua
index f3041779..0ab9c57c 100644
--- a/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua
+++ b/test/tarantool-tests/profilers/gh-5994-memprof-human-readable.test.lua
@@ -7,6 +7,7 @@ local test = tap.test('gh-5994-memprof-human-readable'):skipcond({
['No profile tools CLI option integration'] = _TARANTOOL,
-- See also https://github.com/LuaJIT/LuaJIT/issues/606.
['Disabled due to LuaJIT/LuaJIT#606'] = os.getenv('LUAJIT_TABLE_BUMP'),
+ ["Memprof is disabled"] = os.getenv('LUAJIT_DISABLE_MEMPROF'),
})
local utils = require('utils')
diff --git a/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua b/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua
index ce41e4d5..33925c7f 100644
--- a/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua
+++ b/test/tarantool-tests/profilers/misclib-memprof-lapi.test.lua
@@ -8,6 +8,7 @@ local test = tap.test("misc-memprof-lapi"):skipcond({
jit.arch ~= "x64",
-- See also https://github.com/LuaJIT/LuaJIT/issues/606.
["Disabled due to LuaJIT/LuaJIT#606"] = os.getenv("LUAJIT_TABLE_BUMP"),
+ ["Memprof is disabled"] = os.getenv('LUAJIT_DISABLE_MEMPROF'),
})
test:plan(5)
@@ -164,9 +165,9 @@ test:test("output", function(subtest)
-- one is the number of allocations. 1 event - allocation of
-- table by itself + 1 allocation of array part as far it is
-- bigger than LJ_MAX_COLOSIZE (16).
- subtest:ok(check_alloc_report(alloc, { line = 39, linedefined = 37 }, 2))
+ subtest:ok(check_alloc_report(alloc, { line = 40, linedefined = 38 }, 2))
-- 20 strings allocations.
- subtest:ok(check_alloc_report(alloc, { line = 44, linedefined = 37 }, 20))
+ subtest:ok(check_alloc_report(alloc, { line = 45, linedefined = 38 }, 20))
-- Collect all previous allocated objects.
subtest:ok(free.INTERNAL == 22)
@@ -174,8 +175,8 @@ test:test("output", function(subtest)
-- Tests for leak-only option.
-- See also https://github.com/tarantool/tarantool/issues/5812.
local heap_delta = process.form_heap_delta(events)
- local tab_alloc_stats = heap_delta[form_source_line(39)]
- local str_alloc_stats = heap_delta[form_source_line(44)]
+ local tab_alloc_stats = heap_delta[form_source_line(40)]
+ local str_alloc_stats = heap_delta[form_source_line(45)]
subtest:ok(tab_alloc_stats.nalloc == tab_alloc_stats.nfree)
subtest:ok(tab_alloc_stats.dbytes == 0)
subtest:ok(str_alloc_stats.nalloc == str_alloc_stats.nfree)
@@ -260,10 +261,10 @@ test:test("jit-output", function(subtest)
-- 10 allocations in interpreter mode, 1 allocation for a trace
-- recording and assembling and next 9 allocations will happen
-- while running the trace.
- subtest:ok(check_alloc_report(alloc, { line = 44, linedefined = 37 }, 11))
- subtest:ok(check_alloc_report(alloc, { traceno = 1, line = 42 }, 9))
+ subtest:ok(check_alloc_report(alloc, { line = 45, linedefined = 38 }, 11))
+ subtest:ok(check_alloc_report(alloc, { traceno = 1, line = 43 }, 9))
-- See same checks with jit.off().
- subtest:ok(check_alloc_report(alloc, { line = 39, linedefined = 37 }, 2))
+ subtest:ok(check_alloc_report(alloc, { line = 40, linedefined = 38 }, 2))
-- Restore default JIT settings.
jit.opt.start(unpack(jit_opt_default))
--
2.34.1
next prev parent reply other threads:[~2025-02-13 11:13 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-13 11:10 [Tarantool-patches] [PATCH luajit 0/7][v2] Fix profilers issues Sergey Bronnikov via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 1/7][v2] test: add descriptions to sysprof testcases Sergey Bronnikov via Tarantool-patches
2025-02-18 11:04 ` Sergey Kaplun via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 2/7] sysprof: align test title with test filename Sergey Bronnikov via Tarantool-patches
2025-02-18 11:10 ` Sergey Kaplun via Tarantool-patches
2025-02-18 14:02 ` Sergey Bronnikov via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 3/7][v2] sysprof: fix typo in the comment Sergey Bronnikov via Tarantool-patches
2025-02-18 11:10 ` Sergey Kaplun via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 4/7][v2] sysprof: introduce specific errors and default mode Sergey Bronnikov via Tarantool-patches
2025-02-18 15:43 ` Sergey Kaplun via Tarantool-patches
2025-02-19 9:34 ` Sergey Bronnikov via Tarantool-patches
2025-02-19 15:20 ` Sergey Kaplun via Tarantool-patches
2025-02-19 16:08 ` Sergey Bronnikov via Tarantool-patches
2025-02-13 11:10 ` Sergey Bronnikov via Tarantool-patches [this message]
2025-02-18 12:10 ` [Tarantool-patches] [PATCH luajit 5/7] ci: add workflow with disabled profilers Sergey Kaplun via Tarantool-patches
2025-02-18 14:14 ` Sergey Bronnikov via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 6/7] misc: specific message for " Sergey Bronnikov via Tarantool-patches
2025-02-19 8:06 ` Sergey Kaplun via Tarantool-patches
2025-02-19 12:53 ` Sergey Bronnikov via Tarantool-patches
2025-02-19 15:41 ` Sergey Kaplun via Tarantool-patches
2025-02-19 15:56 ` Sergey Bronnikov via Tarantool-patches
2025-02-13 11:10 ` [Tarantool-patches] [PATCH luajit 7/7] memprof: set default path to profiling output file Sergey Bronnikov via Tarantool-patches
2025-02-18 11:55 ` Sergey Kaplun via Tarantool-patches
2025-02-18 14:20 ` Sergey Bronnikov via Tarantool-patches
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=4defed95d90fee0536d841337b134220d493823e.1739444510.git.sergeyb@tarantool.org \
--to=tarantool-patches@dev.tarantool.org \
--cc=estetus@gmail.com \
--cc=skaplun@tarantool.org \
--subject='Re: [Tarantool-patches] [PATCH luajit 5/7] ci: add workflow with disabled profilers' \
/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