Monitoring Polling Applications
script examples
monitoring polling applications
examples of SystemTap scripts
monitoring polling applications
monitoring polling applications
examples of SystemTap scripts
polling applications, monitoring
examples of SystemTap scripts
uses systemtap/testsuite/systemtap.examples/profiling/timeout.stp
This section how to identify and monitor which applications are polling. Doing so allows you to track
unnecessary or excessive polling, which can help you pinpoint areas for improvement in terms of CPU usage
and power savings.
timeout.stp
tracks how many times each application used the following system calls over time:
poll
select
epoll
itimer
futex
nanosleep
signal
In some applications, these system calls are used excessively. As such, they are normally identified as "likely
culprits" for polling applications. Note, however, that an application may be using a different system
call to poll excessively; sometimes, it is useful to find out the top system calls used by the system (refer to
for instructions). Doing so can help you identify any additional suspects, which you
can add to for tracking.
script examples
timer.s(), sample usage
examples of SystemTap scripts
timer.s(), sample usage
timer.s(), sample usage
examples of SystemTap scripts
Sample Output
uid | poll select epoll itimer futex nanosle signal| process
28937 | 148793 0 0 4727 37288 0 0| firefox
22945 | 0 56949 0 1 0 0 0| scim-bridge
0 | 0 0 0 36414 0 0 0| swapper
4275 | 23140 0 0 1 0 0 0| mixer_applet2
4191 | 0 14405 0 0 0 0 0| scim-launcher
22941 | 7908 1 0 62 0 0 0| gnome-terminal
4261 | 0 0 0 2 0 7622 0| escd
3695 | 0 0 0 0 0 7622 0| gdm-binary
3483 | 0 7206 0 0 0 0 0| dhcdbd
4189 | 6916 0 0 2 0 0 0| scim-panel-gtk
1863 | 5767 0 0 0 0 0 0| iscsid
2562 | 0 2881 0 1 0 1438 0| pcscd
4257 | 4255 0 0 1 0 0 0| gnome-power-man
4278 | 3876 0 0 60 0 0 0| multiload-apple
4083 | 0 1331 0 1728 0 0 0| Xorg
3921 | 1603 0 0 0 0 0 0| gam_server
4248 | 1591 0 0 0 0 0 0| nm-applet
3165 | 0 1441 0 0 0 0 0| xterm
29548 | 0 1440 0 0 0 0 0| httpd
1862 | 0 0 0 0 0 1438 0| iscsid
You can increase the sample time by editing the timer in the second probe (timer.s()).
The output of contains the name and UID of the top 20 polling applications,
along with how many times each application performed each polling system call (over time).
contains an excerpt of the script: