Re: JIT status: how to introspect

Max Lapshin <[email protected]>
Newsgroups gmane.comp.lang.erlang.general
Message-ID <CAMxVRxAjXmOJH2Txb09jwGfBC_vB1rBhCZ3zDhaAL8YaRa_aEw@mail.gmail.com>
I've read this article:
https://www.erlang-solutions.com/blog/performance-testing-the-jit-compiler-for-the-beam-vm/

and I see that perf top shows functions that are looking like  $gen_server2_loop

When I launch my flussonic with erl 24, I do not see any functions
with this pattern, only functions from C.

So this is why I want to understand: is JIT working or I haven't
launched it at all?

On Wed, Feb 24, 2021 at 10:43 PM Max Lapshin <[email protected]> wrote:
>
> 23.77% beam.smp [.] ac_find_all_non_overlapping
> 13.11% libc-2.27.so [.] __memmove_avx_unaligned_erms
>
> I think that it is rather clear that we need to do something with
> binary:split(..., [global])
>
> On Wed, Feb 24, 2021 at 8:57 PM Dan Gudmundsson <[email protected]> wrote:
> >
> > All code is jit-compiled, so there is nothing to check.
> >
> > The jit helps sequentiell code only, if that is not your bottleneck you will not see any speedup.
> > as if your current code uses a lot of bif's/nif's and message passing.
> > And I guess there is still minor stuff that can be improved.
> >
> > On Wed, Feb 24, 2021 at 6:01 PM Max Lapshin <[email protected]> wrote:
> >>
> >> Hi.
> >>
> >> I've tried to launch our flussonic under jit.
> >>
> >> Thank you a lot for this work.  We got zero speedup, but perf top have
> >> showed where we can achieve up to 20% of boost (or maybe more).
> >>
> >>
> >> Is it possible to introspect current jit status?  Something like:
> >>
> >>
> >> > jit:info().
> >> #{
> >>   calls => ...
> >>    misses => ...
> >>    ...
> >> }
> >>
> >> or what do you use to check it in runtime?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.