One of the incredibly useful features in Studio is the ability to profile the kernel. The tool to do this is er_kernel. It's based around dtrace, so you either need to run it with escalated privileges, or you need to edit /etc/user_attr
to add something like:
<username>::::defaultpriv=basic,dtrace_user,dtrace_proc,dtrace_kernel
The correct way to modify user_attr is with the command usermod:
usermod -K defaultpriv=basic,dtrace_user,dtrace_proc,dtrace_kernel <username>
There's two ways to run er_kernel. The default mode is to just profile the kernel:
$ er_kernel sleep 10 .... Creating experiment database ktest.1.er (Process ID: 7399) ... .... $ er_print -limit 10 -func ktest.1.er Functions sorted by metric: Exclusive Kernel CPU Time Excl. Incl. Name Kernel Kernel CPU sec. CPU sec. 19.242 19.242 <Total> 14.869 14.869 <l_PID_7398> 0.687 0.949 default_mutex_lock_delay 0.263 0.263 mutex_enter 0.202 0.202 <java_PID_248> 0.162 0.162 gettick 0.141 0.141 hv_ldc_tx_set_qtail ...
The we passed the command sleep 10
to er_kernel
, this causes it to profile for 10 seconds. It might be better form to use the equivalent command line option -t 10
.
In the profile we can see a couple of user processes together with some kernel activity. The other way to run er_kernel is to profile the kernel and user processes. We enable this mode with the command line option -F on
:
$ er_kernel -F on sleep 10 ... Creating experiment database ktest.2.er (Process ID: 7630) ... ... $ er_print -limit 5 -func ktest.2.er Functions sorted by metric: Exclusive Total CPU Time Excl. Incl. Excl. Incl. Name Total Total Kernel Kernel CPU sec. CPU sec. CPU sec. CPU sec. 15.384 15.384 16.333 16.333 <Total> 15.061 15.061 0. 0. main 0.061 0.061 0. 0. ioctl 0.051 0.141 0. 0. dt_consume_cpu 0.040 0.040 0. 0. __nanosleep ...
In this case we can see all the userland activity as well as kernel activity. The -F
option is very flexible, instead of just profiling everything, we can use -F =<regexp>
syntax to specify either a PID or process name to profile:
$ er_kernel -F =7398
Casinos Near Carson City, NV - Mapyro
ReplyDeleteCasinos Near Carson City, NV · Best Casinos 광양 출장안마 in Carson City · 창원 출장마사지 Westgate Casino 의정부 출장마사지 · Casinos near Carson City, NV · Barona Casino 김해 출장안마 · Reno's Best Casino 목포 출장샵 · Casinos in