Red Hat Training

A Red Hat training course is available for RHEL 8

40.4. SystemTap を使用したポーリングアプリケーションの監視

timeout.stp SystemTap スクリプトを使用して、ポーリングしているアプリケーションを特定し、監視できます。これにより、不要なポーリングや過剰なポーリングの追跡が可能になります。これにより、CPU 使用率や消費電力の改善領域を特定しやすくなります。

前提条件

手順

  • timeout.stp スクリプトを実行します。

    # stap --example timeout.stp

    このスクリプトは、各アプリケーションが時間とともに以下のシステムコールを使用する回数を追跡します。

  • poll
  • select
  • epoll
  • itimer
  • futex
  • nanosleep
  • signal

この例の出力では、どのプロセスがどのシステムコールを使用したか、また何回目のシステムコールを使用したかを確認できます。

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