Solaris 10上的性能调优的一些总结

时间:2007-12-24 12:28:53  来源:  作者:

  知道了是filebench应用导致了这么多的sys call, 但我们不知道是哪一个具体的sys call, 依然可以通过dtrace来查找:

  # dtrace -n 'syscall:::entry /execname == "filebench"/ { @[probefunc] = count(); }'

  dtrace: description 'syscall:::entry ' matched 229 probes

  ^C

  lwp_continue 4

  lwp_create 4

  mmap 4

  schedctl 4

  setcontext 4

  lwp_sigmask 8

  nanosleep 24

  yield 554

  brk 1590

  pwrite 80795

  lwp_park 161019

  read 324159

  pread 898401

  semsys 1791717

  我们可以知道semsys sys call调用得最多, 但不知道在应用中是通过应用的哪些函数调用和怎样调用的, 依然可以通过dtrace。

  # dtrace -n 'syscall::semsys:entry /execname == "filebench"/ { @[ustack()] = count(); }'

  dtrace: description 'syscall::semsys:entry ' matched 1 probe

  ^C

  libc.so.1`_syscall6+0x1c

  filebench`flowop_start+0x408

  libc.so.1`_lwp_start

  10793

  libc.so.1`_syscall6+0x1c

  filebench`flowop_start+0x408

  libc.so.1`_lwp_start

  10942

  libc.so.1`_syscall6+0x1c

  filebench`flowop_start+0x408

  libc.so.1`_lwp_start

  11084

  这样我们可以知道filebench的flowop_start函数调用此semsys sys call最多,我们就可以着手去寻找这个flowop_start函数看是否有改进的方法。

上一篇:Solaris 简单命令

文章评论

共有 位CH网友发表了评论 查看完整内容