I write 2 dtrace scripts in order to measure "clk" and "rma" for sytem workload on nhm-ex (32 cores) when specjbb2005 runs. root at shz-OS:~# ./test_clk_rma.d ...................... clk 309547 rma 32 kcpc_int 309579 ...................... clk 309931 rma 57 kcpc_int 309985 ...................... clk 310158 rma 25 kcpc_int 310183 ^C root at shz-OS:~# ./test_rma.d ............ rma 1531 kcpc_int 1531 ............ rma 1645 kcpc_int 1645 ............ rma 1537 kcpc_int 1537 I find the "rma" in test_clk_rma.d output is smaller than the "rma" from test_rma.d. I guess some overflow interrupts lost when the dtrace script test_clk_rma.d runs. But if it''s true, why most of time are in user space not in system space (from the output of vmstat and mpstat)? The script sources are bellow and I also changed the setting to "dcpc-min-overflow=100;" in "/kernel/drv/dcpc.conf" before tests. root at shz-OS:~# cat test_clk_rma.d #!/usr/sbin/dtrace -s #pragma D option quiet cpc:::cpu_clk_unhalted.ref-all-1000000 { @clk = count(); } cpc:::mem_uncore_retired.remote_dram-all-100 { @rma = count(); } kcpc_hw_overflow_intr:entry { @kcpc_int = count(); } tick-5s { printf("......................\n"); printf("clk"); printa(@clk); trunc(@clk); printf("rma"); printa(@rma); trunc(@rma); printf("kcpc_int"); printa(@kcpc_int); trunc(@kcpc_int); } root at shz-OS:~# cat test_rma.d #!/usr/sbin/dtrace -s #pragma D option quiet cpc:::mem_uncore_retired.remote_dram-all-100 { @rma = count(); } kcpc_hw_overflow_intr:entry { @kcpc_int = count(); } tick-5s { printf("............\n"); printf("rma"); printa(@rma); trunc(@rma); printf("kcpc_int"); printa(@kcpc_int); trunc(@kcpc_int); } Can anybody give me some suggestions? Thanks Jin Yao -- This message posted from opensolaris.org