[HARDWARE] iprobe

Phil Lamovie injec at vic.mondial.net.au
Fri Jan 8 05:03:35 EST 1999

This may be of some help in our quest.


     Phil Lamovie

 injec at vic.mondial.net.au

     cogito ergo zoom

 Injec Racing Developments

-------------- next part --------------
                        IPROBE for Alpha EV5/EV56/PCA56 and Windows NT V4.0
                                          Version T2-3


This version of the IPROBE runs on the Alpha EV5/EV56 and PCA56 for NT Version 4.0 kit.
This kit is only for EV5/PCA56 systems and will not work on EV4 systems.
It is known to work on Lynx, Turbolaser, Alcor, Rawhide and has not been tested on any other EV5 systems 
yet. If you happen to install the kit on any other EV5 systems please give us
feedback on the results.

Since this kit can crash the system,the installation procedure has been modified
to prevent your system from crashing at boot time. To ensure this, the driver has 
been made manually loadable to start with. If the driver loads properly one can
change it to an automatic (boot time load) driver. The following is the procedure
for the above

   * Start by running the install.bat batch file
   * Reboot the system
   * In 'Control Panel" (Available in 'Settings' under 'Start' button) double click
     'Devices'. The 'Devices' window will open up
   * In the device list select 'IprKrnl'. Click the 'Start' button. If the driver
     could not load the system will crash at this point, else you should see a 
     message box showing the progress of the loading.
   * If the driver loads OK, then unload it again by clicking the 'Stop' button
   * Now you can configure for autoload of the driver at boot time. For this, edit
     the file 'iprkrnl.ini' and modify the line

                     Start = REG_DWORD 0x3

                     Start = REG_DWORD 0x2

   * Run the install.bat file again. Reboot the system and you are all set to go.
     Type 'iprobe' and see whether you get counts displayed.

Below is the portion of the file specific to the NT Version 3.5 kit


New features of the IPROBE T2-1 kit are:

o A GUI call CTRCTL is now available to select the events
  to count or sample
o Alpha 21064 counters may now be displayed by PERFMON
o Several bugs have been fixed since the T2 kit


IPROBE V2 is a performance analysis tool and API (patent pending) that
was designed and created by the CSG Performance Group.  The IPROBE tool uses
the IPROBE API to provide the ability to use the performance counters on
Alpha chips on Windows NT, OpenVMS, and OSF/1.  The IPROBE API may also be
used directly to allow customized IPROBE API programs.  This kit contains 
a field test kit for Windows NT.  IPROBE kits for OpenVMS and OSF/1
are available separately.  Currently, the 21064 (EV4) and 21064A (EV45) chips
are supported on Windows NT.  The 21164 (EV5) chip will be supported in the
future.  IPROBE is supported on Windows NT 3.5 Workstation and Advanced Server.
IPROBE will not run on Windows NT 3.1.  IPROBE may run on Windows NT 3.5 RC1
and RC2 but has not been tested and is not supported on RC1 and RC2.

This kit has been tested on a variety of Alpha Windows NT systems
including a DECpc 150 and a 2-processor AlphaServer 2100 4/275.  Testing has
shown this kit to be quite stable.  If any problems occur or you have comments
or suggestions regarding this tool please send them to Brad Waters at
PERFOM::BWATERS or bwaters at perfom.enet.dec.com.

Prior to this release of IPROBE, the CSG Performance Group provided a tool
called PERFEV4 that allowed the Alpha chip counters to be displayed by the
Windows NT PERFMON tool.  This kit is not compatible with the PERFEV4 tool
so it is necessary to first remove the PERFEV4 tool from your system before
installing IPROBE.  Refer to the deinstallation instructions in the PERFEV4
kit to remove PERFEV4 from your system.

To get the first internal field test kit out as early as possible, it
was decided to make IPROBE available before it supports PERFMON.  Therefore,
display of the Alpha chip counters in PERFMON is not supported in this version
of IPROBE.  The next field test kits of IPROBE will contain support for
PERFMON and a GUI to select the IPROBE counting functions.  The next field
test kit for IPROBE will be available in January 1995.


All the commands in the IPROBE tool suite contain online help 
(use the -h switch)

Included in this kit is the "Guide to IPROBE" which includes installation
instructions and documentation on the IPROBE tool set.  Additional
information on IPROBE also exists and is available upon request.

1) "IPROBE: A Performance Measurement and Analysis Tool Suite and API"
      by Brian Wibecan and Brad Waters

2) "IPROBE API documentation - draft version"
      by Brian Wibecan

Send requests for the above documentation to PERFOM::BWATERS or 
bwaters at perfom.enet.dec.com.

(this information supersedes what is stated in the IPROBE user's guide):

   File               Location                         Purpose

IprKrnl.sys  %systemroot%\system32\drivers	IPROBE driver
IprShr.dll   %systemroot%\system32		IPROBE shareable library
Iprobe.exe   %systemroot%\system32		command mode data collection tool
Ctrctl.exe   %systemroot%\system32		GUI data collection tool
Ipreduce.exe %systemroot%\system32		data reduction tool
Rep.exe      %systemroot%\system32		read entry point tool
Procs.exe    %systemroot%\system32		utility used by Rep
Iprobe_ps.exe %systemroot%\system32		current PID display tool

The installation of IPROBE T2-1 adds information to the registry for
the IprKrnl driver and for PERFMON support.

o IprKrnl driver information is located in: 

o The PERFMON counter information is located in:
  \HKEY_LOCAL_MACHINE\Microsoft\Windows NT\CurrentVersion\Perflib


IPROBE T2-1 can be installed on top of IPROBE T2 (if IPROBE T2 is already
installed on your system, it is not necessary to deinstall IPROBE T2 before
installing IPROBE T2-1).

As stated previously, if the PERFEV4 tool is installed on your system you must
remove it before installing IPROBE.  Refer to the deinstallation instructions
supplied with PERFEV4 to remove it.

To install IPROBE follow the installation instructions provided in
"Guide to IPROBE."

If you want to temporarily stop the IPRKRNL driver, you may use the command

To restart the IPRKRNL driver you may use the command

After IPROBE is installed, the IPRKRNL driver is set to start at boot time.
You may use the Devices utility in Control Panel to alter the start
characteristics of the driver.


If you need to deinstall IPROBE from your system:

1) Unload the PERFMON counters 

2) use REGEDT32 to delete the
   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IprKrnl key 

3) use REGEDT32 to delete the 

4) Reboot


1) CTRCTL is GUI that uses the IPROBE API.  CTRCTL allows one to display
   Alpha 21064 chip events via PERFMON.  CTRCTL also allows one to select
   PC sampling.  When using counter control, select events for counter 0
   and counter 1 1st.  If PC sampling is desired select the sample file 
   name and the skip count (see note on skip count below) then select On
   in the Sample Options box.  Finally, start the counters by hitting the
   start button.  To change events hit the pause button and turn off 
   sampling if it was active.  Then, select the new event.

2) The purpose of the sampling skip count is to reduce disk space requirements
   for PC sample files.  The skip count allows PC samples to be collected less 
   frequently by collecting samples every x interrupts (where x is the skip 
   count).  The skip count is useful for sampling steady-state workloads for 
   long periods of time.

3) The CTRCTL and IPROBE tools both use the IPROBE API.  Either tool can
   be used to select counters, activate counting and activate PC sampling.
   The IPROBE tool also provides histogram support and more control over
   sampling.  The CTRCTL tool is easier to use and provides frequently
   used counting and sampling capabilities.  The CTRCTL and IPROBE tools 
   may not be run simultaneously because both tools require exclusive use 
   of the counters.  Both CTRCTL and IPROBE provide Alpha 21064 counter data 
   that can be displayed by PERFMON.

4) To display Alpha 21064 events via PERFMON select the "Add To Chart..." menu 
   or "+" from the tool bar.  Select the Alpha 21064 Counter.  Next, select the
   events to add to the PERFMON display.  When all desired counters are selected,
   click on done.  Default scaling is provided for Alpha 21064 counters on the 
   PERFMON chart to plot the selected events within the 0 to 100 range.  In some
   cases it will be necessary to adjust the scaling.  Adjust scaling by double 
   clicking on the event at the bottom of the PERFMON chart and selecting a new

5) In low frequency mode, IPROBE requires little CPU overhead.

6) Care should be exercised in using the counters in high frequency mode.
   Depending on the counters being used, high frequency mode may use a 
   noticeable amount of CPU.  Also, sampling in high frequency mode may 
   generate IOs at a faster rate than the IO subsystem can handle.  If high 
   frequency sampling is necessary, it may be useful to direct the output to 
   a RAM disk.

7) When sampling, the sample file must be located on a local disk.  IPROBE cannot
   currently write the sample file to a network disk.

8) The maximum histogram size allowed by IPROBE on Windows NT is 256,000 elements.
   If an address histogram is specified that requires a histogram larger than 
   256,000 elements, the histogram will be scaled to fit by adjusting the 
   granularity of the histogram.  IPROBE will report any granularity adjustments
   it makes.

9) Since Windows NT is a 32 bit operating system and Alpha is a 64 bit chip, it
   it necessary to sign extend virtual addresses when doing PC address histograms.
   For this reason, it is not possible to have a single address histogram that
   crosses the 0x7fffffff 0x80000000 boundary.  If a histogram that crosses this 
   boundary is requested, an error message is returned.  To cover the entire 
   virtual address range with PC histograms use a command such as:
      IPROBE -ME ADDRESS -PC 0-0x7fffffff.14 -PC 0x80000000-0xffffffff.14

10) This version of IPROBE doesn't provide robust error messages to the user in all
    cases.  If the input parameters to one of the IPROBE tools is invalid, either 
    the help text for the command is printed or nothing at all.  If this happens, 
    please check your input arguments.  In some cases, an error number will be 
    returned by an IPROBE tool.  Please include the error number when reporting the 
    problem.  Error messages will be improved in the next version of IPROBE.


Prior to this release of IPROBE T2 and T2-1, a tool called PERFEV4 was provided
by the CSG Performance Group that allowed the Alpha chip counters to be
viewed from the Windows NT PERFMON tool was available.  PERFEV4 did
not provide sampling and histogram support based on the Alpha chip counters.
The driver for PERFEV4 was written by Joe Notarangelo of the Windows NT
group at DECwest.  The shareable library for PERFEV4 was originally written
by Santa Wiryaman and later modified and maintained by Brad Waters of the
CSG Performance Group.

The IPROBE tool was originally created on OpenVMS by Brian Wibecan.  IPROBE V2
was further developed by the CSG Performance Group to provide an Alpha chip 
counters analysis tool on OpenVMS, OSF/1, and Windows NT.  Much of the code in 
the IPROBE API and IPROBE tool suite is common among the three operating 

Parts of the IPRKRNL driver included in this version of IPROBE were based on
Joe Notarangelo's PERFEV4 driver.  The driver (IPRKRNL) and shareable library
(IPRSHR) in this version of IPROBE were written by Brad Waters.  Michael Dempsey
wrote REP, IPROBE_PS, and ported IPREDUCE from OpenVMS and OSF/1 to Windows NT.
Ravindra Kulkarni wrote IPROBE.  Brad Waters modified CTRCTL to use the IPROBE 
API and to support PC sampling.

More information about the Hardware mailing list