Skip to content

[2pt] Report all JIT-related allocations as internal #2581

Open
@veod32

Description

@veod32

Product: Tarantool
Since: 2.10
Root document: https://www.tarantool.io/en/doc/latest/book/app_server/luajit_memprof/
Dev issue: tarantool/tarantool#5679
SME: @ igormunkin , @ Buristan

Details

The memory profiler reports the source line as 0 if a trace or other JIT-related stuff is allocated inside some Lua chunk.

For example, if we have the <test.lua> file with the following code

local f1, msg1, errno1 = misc.memprof.start("/tmp/tmp_memprofile.bin")
for _ = 1, 100 do
  local _ = {_, _}
end

we get the following output from the profiler parser.

ALLOCATIONS
@test.lua:0, line 3: 57    3192    0
@test.lua:0, line 0: 4     640     0 <- JIT-related allocations
INTERNAL: 2     438     0

REALLOCATIONS

DEALLOCATIONS
INTERNAL: 24    0       1177
        Overrides:
                @test.lua:0, line 3
                INTERNAL

It can confuse the users, so it's better to report all JIT-related allocations as INTERNAL.

Metadata

Metadata

Assignees

No one assigned

    Labels

    2.10LuaJIT[area] Related to the LuaJIT compilerfeatureA new functionalityserver[area] Task relates to Tarantool's server (core) functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions