home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / u_man / cat1 / kernprof.z / kernprof
Encoding:
Text File  |  2002-10-03  |  6.9 KB  |  133 lines

  1.  
  2.  
  3.  
  4. KKKKEEEERRRRNNNNPPPPRRRROOOOFFFF((((1111))))                                                        KKKKEEEERRRRNNNNPPPPRRRROOOOFFFF((((1111))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      kernprof - special executable for SpeedShop performance measurements on
  10.      the unix kernel
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      ssssssssrrrruuuunnnn -_e_x_p_e_r_i_m_e_n_t kkkkeeeerrrrnnnnpppprrrrooooffff [ _e_x_p_e_r_i_m_e_n_t-_o_p_t_i_o_n_s ]
  14.  
  15. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  16.      The _k_e_r_n_p_r_o_f executable allows kernel profiling information to be
  17.      gathered.  To use it, use the _s_s_r_u_n(1) command on the _k_e_r_n_p_r_o_f
  18.      executable, specifying any of the experiments that are supported for the
  19.      kernel.  These experiments will generate a SpeedShop experiment named
  20.      kernprof.<experiment-type>.<pid>.
  21.  
  22.      The experiments describe themselves as being run on the program "/unix",
  23.      and _p_r_o_f(1) can be used to process the data; the filename of the actual
  24.      kernel for which the data was collected must to be explicitly passed as a
  25.      command-line argument to _p_r_o_f.
  26.  
  27.      In the current release, the only supported experiment is uuuusssseeeerrrrttttiiiimmmmeeee.
  28.      Additionally, only systems running IRIX 6.4 or later may be profiled in
  29.      this manner.  See _p_r_o_f_i_l_e_r(1M) for a description of a PC-style profiling
  30.      which is supported on all versions of IRIX.
  31.  
  32.    UUUUSSSSEEEERRRRTTTTIIIIMMMMEEEE ---- CCCCAAAALLLLLLLLSSSSTTTTAAAACCCCKKKK PPPPRRRROOOOFFFFIIIILLLLIIIINNNNGGGG
  33.      uuuusssseeeerrrrttttiiiimmmmeeee experiments may be run on the machine being profiled or any
  34.      machine that can be reached via the network.  Additionally, the kernel on
  35.      the machine being profiled must have its symbol table loaded via _p_r_f_l_d(1)
  36.      and have stack profiling enabled via _p_r_f_s_t_a_t(1).  Finally, the _r_t_m_o_n_d(1M)
  37.      daemon must be running on the target machine in order for the uuuusssseeeerrrrttttiiiimmmmeeee
  38.      data to be collected (_r_t_m_o_n_d may be run either by _c_h_k_c_o_n_f_i_g(1M)'ing it on
  39.      or by running it manually as root):
  40.  
  41.      On the machine (_a_l_p_h_a) being profiled:
  42.  
  43.                alpha# pppprrrrfffflllldddd <<<<kkkkeeeerrrrnnnneeeellll----ffffiiiilllleeee>>>>
  44.                alpha# pppprrrrffffssssttttaaaatttt ssssttttaaaacccckkkk
  45.                alpha# ////uuuussssrrrr////eeeettttcccc////rrrrttttmmmmoooonnnndddd
  46.  
  47.  
  48.      On the machine (_b_e_t_a) where kernel usertime data is being collected:
  49.  
  50.                beta% ssssssssrrrruuuunnnn ----uuuusssseeeerrrrttttiiiimmmmeeee ////uuuussssrrrr////bbbbiiiinnnn////kkkkeeeerrrrnnnnpppprrrrooooffff ----tttt 5555 ----pppp 0000 aaaallllpppphhhhaaaa
  51.                beta% pppprrrrooooffff ----ggggpppprrrrooooffff <<<<kkkkeeeerrrrnnnneeeellll----ffffiiiilllleeee>>>> kkkkeeeerrrrnnnnpppprrrrooooffff....uuuusssseeeerrrrttttiiiimmmmeeee....<<<<ppppiiiidddd>>>>....ccccppppuuuu0000
  52.  
  53.  
  54.      The above example loads the symbol table of the kernel into the kernel
  55.      running on machine _a_l_p_h_a, enables stack profiling, and starts up _r_t_m_o_n_d
  56.      (assuming that it wasn't _c_h_k_c_o_n_f_i_g'ed on).  On machine _b_e_t_a the _k_e_r_n_p_r_o_f
  57.      executable is used to collect 5 seconds worth of data from CPU 0 on
  58.      machine _a_l_p_h_a.  Once the data is collected _p_r_o_f(1) is used to analyze and
  59.      display the results.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. KKKKEEEERRRRNNNNPPPPRRRROOOOFFFF((((1111))))                                                        KKKKEEEERRRRNNNNPPPPRRRROOOOFFFF((((1111))))
  71.  
  72.  
  73.  
  74.      The command-line options needed to run kernel _u_s_e_r_t_i_m_e profiling are:
  75.  
  76.      ----cccc _c_o_u_n_t
  77.           Specifies that _c_o_u_n_t stack samples should be collected for each CPU
  78.           being profiled.  Since stack samples are generated once a
  79.           millisecond, this corresponds to about _c_o_u_n_t/1000 seconds ...
  80.  
  81.      ----pppp _c_p_u-_l_i_s_t
  82.           Specifies which CPUs are to be profiled.  The syntax of _c_p_u-_l_i_s_t is
  83.           a series of comma separated CPU specifications.  Each specification
  84.           is either a single CPU number or a range of CPU numbers separated by
  85.           a hyphen (-) with CPU numbers being counted from 0.  E.g. ``-p 0-
  86.           3,7'' specifies that CPUs 0 through 3 and CPU 7 should be profiled.
  87.  
  88.      ----ssss _s_c_h_e_d_p_r_i
  89.           Specifies that _k_e_r_n_p_r_o_f should run at real-time priority _s_c_h_e_d_p_r_i.
  90.           A value of 0000 will result in normal time-sharing priority.  By
  91.           default _k_e_r_n_p_r_o_f runs at the same priority as _r_t_m_o_n_d.  If _k_e_r_n_p_r_o_f
  92.           is run by someone other the super user, the attempt to set real-time
  93.           priority scheduling will result in a harmless warning.
  94.  
  95.      ----tttt _t_i_m_e_o_u_t
  96.           Specifies that stack samples should be collected for _t_i_m_e_o_u_t
  97.           seconds.
  98.  
  99.      _h_o_s_t_n_a_m_e
  100.           Specifies the host to collect data from.  The default is llllooooccccaaaallllhhhhoooosssstttt.
  101.  
  102.      ----ffff _r_t_m_o_n-_f_i_l_e ...  Specifies one or more raw rrrrttttmmmmoooonnnn data
  103.           files to be copied to equivalent SpeedShop format files (see _r_t_m_o_n-
  104.           _c_l_i_e_n_t(1)).  This option may not be used with the ----pppp _c_p_u-_l_i_s_t or ----tttt
  105.           _t_i_m_e_o_u_t options.  If the ----cccc _c_o_u_n_t option is specified, only the
  106.           first _c_o_u_n_t stack samples will be translated.
  107.  
  108. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  109.      speedshop(1), ssrun(1), prof(1), profiler(1), rtmond(1M), rtmon-client(1)
  110.  
  111. NNNNOOOOTTTTEEEESSSS
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.                                                                         PPPPaaaaggggeeee 2222
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.