#!/usr/sbin/dtrace -s dtrace:::BEGIN { vtotal = 0; } syscall:::entry /self->vtime == 0/ { self->vtime = vtimestamp; } syscall:::return /self->vtime/ { @vtime[execname,pid] = sum(vtimestamp - self->vtime); vtotal += (vtimestamp - self->vtime); self->vtime = 0; } dtrace:::END { normalize(@vtime, vtotal / 100); printa(@vtime); }