Performance Logging Services (PLS) is a software utility that tracks the performance of another program in terms of statistics of timing and use of memory buffers. The monitored program must utilize either the UNIX or the VxWorks operating system. PLS can monitor performance requirements in real time and uses minimal memory and central-processing-unit (CPU) resources. It can measure software timing events with an accuracy of less than 50 µs. PLS consists of (1) a library of application-program interfaces (APIs) and (2) a performance-control-tool subprogram. The APIs are incorporated into a program to be monitored by simply compiling them with the program code. During execution, the APIs update performance statistics in shared memory, to which an external program can gain access. An operator can use the performance-control tool to gain access to the statistics, reset the statistics, and set control limits (essentially, upper and lower limiting values of statistics). The performance-control tool includes a trigger that can be used to start another program when the control limits are exceeded. Data from the triggered program is used to find the source of timing glitches and/or otherwise assist in troubleshooting when performance requirements are out of specification.

This program was written by Terry Ross of Kennedy Space Center. For further information, access the Technical Support Package (TSP) free on-line at under the Software category.


NASA Tech Briefs Magazine

This article first appeared in the December, 2002 issue of NASA Tech Briefs Magazine.

Read more articles from the archives here.