Copyright © 1996-2018 Mark G. Daniel
Copyright © 2001-2018 Jean-François Piéronne
This program, comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under the
conditions of the GNU GENERAL PUBLIC LICENSE, version 3, or any later version.
http://www.gnu.org/licenses/gpl.txt
hyperSPI++ (pronounced "hyper-spy-plus") generates VMS System Performance Information HTML documents. It can profile, complete with graphics, fundamental system performance indicators as CPU usage, memory usage, IO values. It works extremely well. Here are examples of its output; CPU Usage and Memory usage, along with information on its capabilities.
hyperSPI++ comprises two distinct elements.
In addition to the joint copyright on hyperSPI++ other copyright exists on parts of the charting library and may have different distibution licenses. All are provided "as-is" and are freely available for unrestricted use.
Accessing the script (presentation application) provides a dialog where the various data may be selected and then processed.
<a href="/cgi-bin/hyperspixx">/cgi-bin/hyperspixx</a>
Quick links to selected reports also can be useful:
Graphical <a href="/cgi-bin/hyperspi">performance information</a> for selected VMS compute servers. <br>Since 7am today: <a href="/cgi-bin/hyperspi?list_node=SYSTEM&period=until_now&cpu=yes&memory=yes&hard_faults=yes&do=page">SYSTEM</a> <br>Since yesterday: <a href="/cgi-bin/hyperspi?list_node=SYSTEM&period=since_yesterday&cpu=yes&memory=yes&hard_faults=yes&do=page">SYSTEM</a> <br>The last week: <a href="/cgi-bin/hyperspi?list_node=SYSTEM&period=7&cpu=yes&memory=yes&hard_faults=yes&do=page">SYSTEM</a>
NOTE: Unlike most WASD software, on shared multiple architecture installations this application can only build one at a time. Use @CLEAN.COM after each build and before building on another platform.
FURTHER NOTE: The GDCHART build is somewhat of a blunt instrument. It's a bit embarrassing but trying to get the MMS/MMK build to behave itself across platforms and versions eventually exhausted all patience. So the build procedure just alternately tries what is known to work. The occasional %MMS-F-ABORT may be seen during the GDCHART build but as long as an executable results at the end the purpose has been fulfilled.
This version of hyperSPI++ (v3.1) has not been extensively deployed and so in some respects the build should be considered field test! It does compile cleanly under "HP C V7.3-009 on OpenVMS Alpha V8.3" and "VSI C V7.4-001 on OpenVMS IA64 V8.4-2L1". Outside of these YMMV.
$ set default device:[dir] $ unzip -V location:HYPERSPIXXnnn.ZIP $ set default [.hyperspixx] $ @build_hyperspixx $ @build_hyperspixx$agent $ copy wasd_exe:hyperspixx.exe cgi_exe:
This version has been tested under WASD. It should also operate under OSU (DECthreads) and VMS Apache. Of course described script and other locations will need to be modified for the non-WASD server environment.
hyperSPI++ seems to be fairly sensitive to the EXE$GETSPI() system call (probably not unreasonably) and may need at-the-least relinking depending on the exact VMS version. It was originally developed and tested on V6.n systems, then with V7.1 and V7.2, and most recently (after a decade senescence) on Alpha VMS V8.3 and Itanium VMS V8.4.
Note that the startup and run-time procedures WILL require some modification.
The collection agent be must started up on all nodes for which information
is required.
Update
After an operating system upgrade the HYPERSPIXX$AGENT may require a relink.
Stop the data collection agent, relink, and then restart the detached data collection agent.
$ pipe show system | search sys$input "hyperspi++" $ stop /id=<pid> $ @build_hyperspixx$agent link $ @hyperspixx$agent startup
To update the hyperSPI++ release, stop the agent process.
$ pipe show system | search sys$input "hyperspi++" $ stop /id=<pid>
Archive the existing directory.
Install and configure as per a new installation.
Configuration
A repository for the data files is required.
It should be located by a concealed device logical name and contain two directories. For example:
DSK$HYPERSPI:[DATA] DSK$HYPERSPI:[REFRESH]
The logical name HYPERSPI$DATA locates the data.
It is important this data is cleaned-up occasionally. It uses approximately 394 blocks (~200kB) per day per system.
The HYPERSPIXX$STARTUP.COM procedure provides an example startup.
To access the on-line help a mapping rule such as the following is required.
pass /hyperspixx/-/* /wasd_root/src/hyperspixx/*