HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.30
System: Linux iZj6c1151k3ad370bosnmsZ 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64
User: root (0)
PHP: 7.4.30
Disabled: NONE
Upload Files
File: //usr/share/systemtap/examples/general/stopwatches.stp
#!/usr/bin/stap
# Copyright (C) 2012-2018 Red Hat, Inc.
# by William Cohen <wcohen@redhat.com>
#
# exercise the stopwatch tapset

probe begin
{
  start_stopwatch("wall");
  /* The next two lines assumes that target is running and in user-space. */
  start_stopwatch("user");
  stop_stopwatch("system")
}

probe syscall_any
{
  if (pid() != target()) next
  stop_stopwatch("user")
  start_stopwatch("system")
}

probe syscall_any.return
{
  if (pid() != target()) next
  start_stopwatch("user")
  stop_stopwatch("system")
}

probe end
{
  stop_stopwatch("wall")
  stop_stopwatch("user")
  stop_stopwatch("system")

  w = read_stopwatch_us("wall")
  u = read_stopwatch_us("user")
  s = read_stopwatch_us("system")
  printf ("wall clock                 %12dus\n", w);
  printf ("wall clock in user-space   %12dus\n", u);
  printf ("wall clock in kernel-space %12dus\n", s);

  delete_stopwatch("wall")
  delete_stopwatch("user")
  delete_stopwatch("system")
}