Skip to main content

IBM Systems  >   z Systems  >   z/VM  >  

Description of PRFGUI

Download count: 17 this month, 7386 altogether.

Downloads for PRFGUI:
VMARC archive: v-478K

From Kris Buelens, IBM Belgium
The purpose of PRFGUI is to give access to the data in VMPRF Trend and Summary files. It uses the VM GUI Facility to have a modern look; as VM GUI does not support Graphics, GDDM is used to display the graphs in the 3270 session.

The base design was oriented towards ease of use: a simple mouse click should display a graphic of various performance data. With one mouse click it is possible to display the same graph, but for another day or the same graph but for another DASD/user ...
As author, I have problems saying 'PRFGUI is very useful, and is very easy to produce graphs of  VMPRF performance data' but I think I can honestly say it.

In general, almost anything that VMPRF can print in a report can also be plotted by PRFGUI. Stronger: VMPRF cannot produce a time based listing with for example %busy of a specific DASD or the IO-rate of a given user. PRFGUI can give you such graphics.

I still have many ideas for improvements, but, if you have special whishes, please let me know by sending me an e-mail.  Especially: if you cannot use PRFGUI, let me know why.

Version 1.13 Highlights Nov 2007

When using FICON channels, VMPRF records much more performance data than what is required to get a % channel busy.  For FICON channels in FCP mode (probably to connect a LINUX guest to a SAN), % busy seems even inappropriate as measurement. 

Therefore, PRFGUI can now plot the following for FICON channels:

  • The bus cycles utilization (for the whole system only).
  • The work units utilization (this is % busy).
  • The data units write utilization.
  • The data units read utilization.
  • The total number of bytes written per second.
  • The total number of bytes read per second.
Except for the first one, you can plot these items for the whole system ("CPC"), this VM LPAR, or both.

We also fixed the AVG % busy for FICON channels caclculated when performing an "Analyze file" (the % was always 0).

Version 1.12a Highlights Jan 2007

At some places we coded the IF sections in PIPE's SPECS stages like:
    "if xxx<>0 then ..."
This works when using PIPE's version distributed with VM. However, when using the version distributed from Princeton a syntax error is signaled. So we now code:
    "if xxx¬=0 then ..."
what requires more attention when down/uploading to/from workstations.

Version 1.12 Highlights Apr 2006

When a time range other than 00:00 to 24:00 was specified for plots based on different record types (like userid based data and system based data), PRFGUI did not find data of all record-types. Hence it displayed an error message like "Recordtype 41 not found in fn ft..." The leaking pipeline has been fixed.

Version 1.11 Highlights Feb 2006

Support plotting percent busy of FICON channels.

Version 1.10 Highlights Jun 2005

For users with a Windows platform: fill the message area with newline characters so that it gets fully colored.
Addition of a helpfile for the panel that displays information about devices on a given channel path.
The DFSMS migration flags in the files list box are now maintained, that is: the "*migrated*" flag is removed when the file is recalled.
Avoid silly error message on Channel Devices panel for users that have no permission to issue "CP Q rdev".

Version 1.9.a Highlights Feb 2004

The PRFGDDM EXEC was missing in the package.  Consequently, the "GDDM" push button could not be used to "chop" graphs at a given value, or to draw an extra horizontal line.

Version 1.9 Highlights Oct 2003

  • If possible, changes to the chart format are directly reflected in the GDDM graphic. Advantage: we don't read the VMPRF file again.
  • We provide "panel size tailoring" interface: you can make the main PRFGUI panel bigger.
  • The main change is in the plot function of non-channel data. We had to solve a major problem when plotting multiple variables on a chart when the data are what GDDM/PGF calls "untied".
    "Untied data" means that each curve has its own X and Y variables; with "tied data", all Y variables share the same X values. With untied data, GDDM/PGF takes the first set of X,Y values to define the graph's X-range and labels, what can cause problems.
    So, in practice the problem surfaced when the first curve you plot did not cover the whole timerange touched by other curves.
        Example: you plot CPU busy of user A and user B, where A is logged
                 on from 10:00 to 16:00 and user B from 09:00 till 13:00
    
    Solution: we convert all data to "tied" data by using GDDM's "missing data" value. The PRDGD EXEC was almost entirely rewritten.

    We also try to improve performance by optimizing the PIPE we use.

        -For TREND files: often a bit more CPU, sometimes less I/O
        -For SUMMARY files: same IO, much less CPU
        -In any case: less CPU if plotting many vars of a single record
         (e.g. System IO rate & %CPU; or: %CPU & TV-ratio of a user)
    

Version 1.8 Highlights Aug 2003

  • The major change is that you can plot LPAR channel busy again. (this function stopped working since VM/ESA 2.4 ) For setup instructions, see PRFGUI INSTALL, note 6.
  • As a consequence, channel plotting has some new features:
    - you can plot channel busy of more than one TREND file at once
    - given weekdays can be excluded from plots (e.g. weekend days)
  • When looking at channel busy %, I often wanted to know which devices are connected to that channel. PRFGUI helps you now: a new panel can display all devices defined on a channel, and even which minidisks are active on a disk. Note that this information is collected from your life system, not from the VMPRF history file being analyzed.
  • Just as with PRFVIEW you can pass one or more history files as input parameter. This makes it easier to work with history files that are for some reason not stored at the standard location(s) you describe in PRFGUI VARS.
       Examples:
     
            PRFGUI VMPRF LISTING VMPRF 200
            PRFGUI VMPRF LISTING VMPRF.MYREPORTS
            PRFGUI /                (enter in front of a file in FILELIST)
     
       You can also ask to add more than a single file.  Example:
     
            PRFGUI %%%_* TREND A ABC* SUMMARY SFSXXX:VMPRF.OLDLISTS
     
       Observe that you simply enter the file specs one after the other, each
       filespec is composed of 3 or 4 words:
         fn ft fm          A file on an access disk
         fn ft dd.yyy      A file in an SFS (at least one . is required)
         fn ft userid cuu  A file on a not accessed disk (note that "userid"
                           shouldn't look like a filemode or we get confused)
    
  • Some messages are now displayed in a msg area at the bottom of the panel. So they disturb you less.
  • Some smaller changes you will/will not detect.

Version 1.7 Highlights

Avoid PIPE errors by increasing PICTURE for vars expressed in %

Version 1.6 Highlights Nov 2002

  • Corrected all calls to VMLINK.
        In my eyes, VMLINK doesn't behave nicely: you code "VMLINK VMPRF 200"
         - if you have no NAMES file defining VMPRF as nickname
           VMLINK works as expected: it links and accessed VMPRF 200
         - now you define VMPRF as nickname in some VMLINK NAMES file, and
           VMLINK gives surprises: it first links whatever is defined as
           nickname 'VMPRF'; then it searches for nickname 200 and you get
             DMSVML2067E Unknown disk nickname (200)
        
  • Allow "GDDM overrides" to be "sticky". By default, all plotted variables are scaled automatically by GDDM. As a result, when you consecutively plot for example %CPU used by different users, the scale always changes between graphs, and you have to verify what scale GDDM selected before interpreting the graph. By selecting the "GDDM" push button you can set a maximum and hereby define GDDM's scale. When you also select the 'sticky' radio button, this maximum will be taken for all subsequent graphs.
  • If you analyze VMPRF Trend files, and you also collect performance data during weekends, the resource consumption will probably be much lower on Saturdays and Sundays (and maybe even on Mondays due too absence of batch load in the morning.) PRFGUI 1.6 allows you to exclude these days from the plots.
  • Reduce VM CPU consumption by avoiding TimerTick on VM. This needless overhead was very high if PRGUI was started multiple times before returning to CMS Ready.
  • No longer lock main frame by msgBox if plot user not found & similar "small" problems. So, no need to close this msgbox first before starting another plot.
  • Correct date calculations: x-value was wrong when plotting trends spanning year-end.
  • The User_res and User_wss values were not correctly calculated: we forgot to divide by "User_count" (the number of user observations in the interval. This number is expected to be > 1 at times when the monitir interval was changed)
  • In the variable Tailoring "extended test" numbers are no longer displayed in scientific notation, unless they are very big/small.
  • Some smaller changes you will/will not detect.

Version 1.5 Highlights May 2001

  • One update to PRFGUI VARS (defines what is plotted) When plotting the "UserpagesOnDasd" from TREND files, the value was much too high (We forgot to divide by the number of measurements)
  • Allow explicit RECALL of DFSMS migrated files (MIGRATE works too) (by requesting the RECALL beforehand, you won't have to wait for the recall while creating a Graph)
  • Some problems for users on MS Windows platforms are fixed:
    • When PRFGUI is started in "SUMMARY file" mode, the date fields overlayed the time fields.
    • Mousehints on MSW cause bad refresh of listboxes. This was very ennoying in the "vars to plot" lower listbox: when you asked to view vars containing "CPU", some "ghost" lines were displayed (visible lines that cannot be selected). The ALL function got a partial solution now (the refresh is still not perfect, but "ghost" lines are gone). A quick bypass: remove the "Call MouseHint" statements from the PRFGUI EXEC: listbox refresh becomes OK, but, no more mouse hints...

Version 1.4.a Highlights Feb 2001

I forgot to include the PRFGDDM GBEXEC in the package. Sorry.

Version 1.4 Highlights Feb 2001

There was a bug, and so, I made some extra changes:
  • When only Physical or LPAR busy records are found in the VMPRF history file, PRFGUI could gove a misleading message: No physical nor LPAR channel data found
  • When plotting channels and only 1 record is found, the graphic shown by GDDM was empty. Now I refuse to plot channels unless at least 2 measurements are found.
  • Mouse sensitive hints on main and file tailoring panel.
  • Message boxes now lock the main GUIWIRE frame

Version 1.3 Highlights Oct 2000

Two changes: both related what should happen with VMPRF history files files that are not found. What are the facts:
  • You can tailor the list of VMPRF history files that are used as input for GDDM plots. The result is saved in PRFGUI USERVARS.
  • Sometimes though, you might like to indicate files that do not always exist (such as a VMPRF SUMMARY on your A-disk). The normal case is that GUIWIRE will signal not found history files by sounding the alarm and including error messages at the end of the list of "Source Files".
What has been changed:
  1. When some files were not found, you may miss this error. At the other hand, we don't like to send a popup message box as this is too ennoying.
    ==> we now show an error message at the bottom of the main panel.
  2. By changing the PRFGUI USERVARS file, you can indicate that some history files are "optional". This means that no error is generated when such a file is not found (or the mdisk cannot be linked). This feature is not yet supported for SFS directories.
    ==> code "(OPT" on the SUMMARY/TREND card in PRFGUI USERVARS
    For example:
         SUMMARYFILE=VMPRF    SUMMARY  VMPRF 200
         SUMMARYFILE=VMPRF    SUMMARY  A (OPT
         SUMMARYFILE=VMPRF    SUMMARY  VMPRF 191 (OPT
       ==> for the last two cards, no error message is given if no VMPRF
           SUMMARY file is found there.
    

Version 1.2 Highlights June 2000

The changes are:
  • When plotting channels, and you changed the channel sort order and you did not rerun "analyze file", wrong cphid were plotted. This is corrected.
  • When TREND/SUMMARY files were not found, I throwed a message box at you. This is ennoying if some of the VMPRF files do not always exist. To avoid this message box, any errors get listed at the bottom of the filelist and the alarm is sound.
  • A pull down menu has been added what allows a quicker switch between PRFGUI's windows.

Version 1.1 Highlights November 1999

The changes applied since Version 1.0 are:
  • Fixed plotting bug in PRFGD that you could not plot certain combinations with filtered variables. Such as plotting %CPU used and % CPU Wait for a userid and a userclass
  • You can now dynamically turn on/off the GDDM "legend". Great help when you plot many variables and the legend overlays the graph.
  • Sort vars by name or class
  • Sort channels by channel id, %busy, or devices connected
  • Save in LASTING GLOBALV only what is actually changed
In the variable tailoring panel:
  • If you enter a filter value, it is used by default during testing.

Version 1.0 Highlights November 1999

I won't mention the smaller changes; the more important changes applied since Version 0.9 are:
  1. For the main PRFGUI panel.
    • The location of VMPRF history files is no longer stored in GLOBALV, but in up to 3 control files: "PRFGUI USERVARS", "PRFGUI nodeid" or "PRFGUI VARS" This way, end-users can use PRFGUI without tailoring if you place a "PRFGUI nodeid" on a public disk. Additionally, this allows the list of files to grow longer than 255 characters.

    • HOWEVER: for compatibility reasons, when PRFGUI is started and PRFGUI  USERVARS does not contain TRENDFILE=and/or SUMMARYFILE=cards, I do take KEEPFILES.T and/or KEEPFILES.S from GLOBALV and store it in file PRFGUI USERVARS A.
    • When you may have to wait for a long time for the result of your request, a small "please wait" panel is shown.
    • TERM MORE and TERM HOLD: a CMS/GUI limitation makes that I have to show the graphics on the 3270 screen, instead of in a GUI frame. When this session would be in MORE or HOLDING, PRFGUI can't continue. Therefore, PRFGUI will set TERM HOLD OFF and TERM MORE 0 0 when the first graph is shown; when PRFGUI can terminate properly, your previous settings are restored.
    • A "Start Interactive Chart" push button has been added, you can use it when you want to change the GDDM graphic presentation, for example to change the colors being used, or to change the charttype (e.g. from line chart into a tower chart) ...

    • This push button replaces the check box used in previous versions. If you want that any graphic becomes an interactive session, you can click that choice in a pull down menu.
  2. For all panels used in PRFGUI:
    • - A CMS/GUI shortcoming made that when list or combo boxes were updated, no line could be selected. For example:
    •    - you fill in a new ADMCFORM name in the combo box entry field
         - PRFGUI adds this new item in the combo box list (so it doesn't get lost)
           ==> as a result, CMS/GUI blanks out the combo box.
         In the past, I tried to bypass this, but with varying success.
         Now, I found a trick with a Timer.
         ==> List box and combo box selected lines are the way you expect
  3. For the variable tailoring panel.
    • The panel layout has been made more logical
    • Variable names can be changed at any time, but uniqueness is enforced
    • At startup of this panel, often the data shown on the panel did not reflect the variable selected. One had to select another variable to make it al work. This problem was hard to fix, but it finally is.
    • Allow saving XTEST data to disk

Version 0.9.A Highlights April 1999

Only a few changes, but one ennoying bug is removed:
  1. Avoid VMLINK error for SUMMARY/TREND files residing on accessed minidisk (THE reason why I made a 0.9.A version)
  2. In the PRFGUI variable selection list box, a "*?*" separator means that this variable needs a filter value (such as a userid).
  3. Three more variables are predefined: user VIO rate, user Resident pages and user WorkingSet Size.

Version 0.9 Highlights December 1998

Besides the numerous small fixes, the list of changes in 0.9 is as follows:
  1. We now support the VMPRF recordtypes A2 and 06, meaning you can use PRFGUI to plot SFS performance stats and LPAR data.
  2. On the Filter selection panel support for SFS and LPAR is included.

  3. An icon button is added so that you can easier start a gragh.
  4. An XEDIT like ALL function allows you to list only Perf Vars
  5. Your VM userid & nodeid are shown in PRFGUI's panel titles
  6. You can now plot data coming from more than 1 VMPRF TREND file.
  7. When VMPRF files are migrated, you'll get a "DFSMS recalls your file" information message during the recall.
  8. On "FILE TAILOR" panel:
    • a check box allows to make temp changes to the list of VMPRF files.
    • implement LISTFILE "(SEARCH" to find VMPRF SUMMARY/TREND files when stored in a directory tree. We for example use a directory per day.
    •     SFSD:VMPRF.
          SFSD:VMPRF.D1MONDAY
          SFSD:VMPRF.D2TUESDAY
          SFSD:VMPRF.D3WEDNESDAY
          SFSD:VMPRF.D4THURSDAY
          SFSD:VMPRF.D5FRIDAY
          SFSD:VMPRF.E1MONDAY
          SFSD:VMPRF.E2TUESDAY
          SFSD:VMPRF.E3WEDNESDAY
          SFSD:VMPRF.E4THURSDAY
          SFSD:VMPRF.E5FRIDAY

Version 0.8 Highlights June 1998

With Version 0.8 panels are provided to define performance variables. This way time based plots of almost anything can be produced. A few examples: the MDC hit rate of a user throughout a day; the responsetime of a given DASD; the %CPU used by a class of users in the previous month.

The tailoring function has a kind of datascoop. VMPRF history records are stored in binary of floating point format; far from easy to read. PRFGUI shows records in a readable format.

Version 0.7 Highlights January 1997

This version, 0.7, supports plotting of channel busy, as well as any other performance data gathered by VMPRF.

For people without VMPRF, a small VMPRF summary file is included in the package, so they too can have a look.



Prerequisites for PRFGUI: VM/ESA V2 R1 with the VM GUI feature, VMPRF, GDDM, GDDM/PGF and GDDM/REXX.