38 lines
711 B
D
38 lines
711 B
D
/* Dirty NIF schedule overhead */
|
|
pid$target:beam.smp:schedule_dirty_cpu_nif:return
|
|
{
|
|
s = timestamp;
|
|
}
|
|
|
|
pid$target:libsodium.so.*:randombytes:entry {
|
|
e = timestamp;
|
|
}
|
|
|
|
pid$target:beam.smp:execute_dirty_nif:entry
|
|
/s != 0/
|
|
{
|
|
@SchedTime = lquantize(timestamp - s, 0, 10000, 250);
|
|
s = 0;
|
|
}
|
|
|
|
pid$target:beam.smp:execute_dirty_nif:return
|
|
{
|
|
@ExecTime = lquantize(timestamp - e, 0, 10000, 250);
|
|
e = 0;
|
|
r = timestamp;
|
|
}
|
|
|
|
pid$target:beam.smp:dirty_nif_finalizer:entry
|
|
/r != 0/
|
|
{
|
|
@ReturnTime = lquantize(timestamp - r, 0, 10000, 250);
|
|
r = 0;
|
|
}
|
|
|
|
END
|
|
{
|
|
printa("Scheduling overhead (nanos):%@d\n", @SchedTime);
|
|
printa("Return overhead (nanos):%@d\n", @ReturnTime);
|
|
printa("Exec time (nanos):%@d\n", @ExecTime);
|
|
}
|