Help with analysing JIT perf report
Wed Jun 23 11:55:07 CEST 2021
On Wed, Jun 23, 2021 at 11:39 AM Max Lapshin <max.lapshin@REDACTED> wrote:
> I've checked it without lcnt and situation is the same.
> I have NIF ERL_NIF_DIRTY_JOB_IO_BOUND that uses enif_select to read
> data with function read from DVB card.
> I've seen that this pause instruction is somewhere nearby driver_entry@
> I've checked: one process that reads data from DVB card gets about 350
> ready_input messages per second.
> Maybe I don't need to use ERL_NIF_DIRTY_JOB_IO_BOUND flag if I know
> that socket is ready for reading and non-blocked?
We do not use dirty schedulers for reading from sockets, so if DVB cards
behave similarly to sockets then you can skip using a dirty scheduler.
Rapidly scheduling processes in between normal and dirty schedulers could
cause a lot of time to be spent in erts_schedule.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions