PCA collects performance information on your application and lets you view that information to observe the runtime characteristics of your application, such as: o Where your application spends the most time o What parts of your application are executed the most o What parts of your application are compute-bound or I/O-bound o What areas of your application are, or are not, executed by tests o What the dynamic call relationships are among the routines in your application o Where page faults occur o Where you use system services With this information, PCA helps you pinpoint important qualities of your application, such as the location and nature of performance bottlenecks, or how effective your test coverage is.
1 – ElaTimInfo frame
Collecting elapsed time information gives you a broad measure of where your application is spending the most elapsed, or wall-clock, time. Elapsed time includes wait loops and other factors, both internal and external to your application, that affect how long it takes for your application to complete. To collect elapsed time information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Process Execution query category. o Click on the elapsed time query. o Click on Collect in the Collector main window. For information on displaying the results of the elapsed time data collection, you can refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
2 – ProTimInfo frame
Collecting process time information on your application tells you where your application is spending the most process, or CPU, time. Process time excludes external factors such as device wait loops and system load from the data sampling on your application. Thus you get a good indication of where your application has compute- bound performance bottlenecks. To collect process time information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Process Execution query category. o Click on the process time query. o Click on Collect in the Collector main window. For information on displaying the results of the process time query, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
3 – TesCovInfo frame
Collecting test coverage information on your application can tell you how effectively and completely your tests exercise the codepaths in your application. Test coverage information can tell you which lines of code were, or were not, covered. To collect test coverage information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Coverage query category. o Click on the query related to the coverage information you are interested in. o Click on Collect in the Collector main window. For information on displaying the results of the coverage queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
4 – ExeCtsInfo frame
Collecting execution counts information tells you what parts of your application are executed most when you place breakpoints at specific program locations. Execution counts information can be very useful for giving clues to the reason why a particular routine or algorithm is consuming a lot of time. To collect counting information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Execution Counts query category. o Click on the query related to the exact counting information you want. o Click on Collect in the Collector main window. For information on displaying the results of the execution counts query category, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
5 – IoOpsInfo frame
Collecting I/O usage information tells you where your application is performing I/O operations, and gives detailed information on each I/O operation it records. Collecting I/O information can give you more detailed information than you can get from collecting system services information. To collect I/O usage information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the I/O Usage query category. o Click on the specific I/O query you are interested in getting information on. o Click on Collect in the Collector main window. For information on displaying the results of the I/O Usage queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
6 – SysSerInfo frame
Collecting system service usage information on your application is useful for determining where and your program calls each system service and what parts of your application use system services the most. For each system service call, PCA gathers the following data: o The system service index o The PCA address of the system service call o The current process, or CPU, time To collect system service usage information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the System Service Uages query category. o Click on the specific system service usage query that you are interested in collecting information on. o Click on Collect in the Collector main window. For information on displaying the results of the system service usage queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
7 – AdaTskInfo frame
Collecting Ada Tasking information gives you the following tasking information on your Ada application: o What tasks are performing context switching o What Ada tasking names are used o What Ada tasking types are used o What Ada task priorities are used To collect Ada Tasking information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Ada Tasking query category. o Click on the query related to the specific tasking information you are interested in collecting. o Click on Collect in the Collector main window. For information on displaying the results of the Ada tasking queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
8 – RouCalInfo frame
Collecting Dynamic Call information on your application tells you: o Your application's call tree structure o What routines call other routines o Which routines make the most calls Unlike the static call stree structure provided by SCA, the dynamic call tree produced by PCA shows the runtime characteristics of the relationships among your application's routines during a given test run. To collect Dynamic Call information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Dynamic Call Information query category. o Click on the specific query related to the information you are interested in collecting. o Click on Collect in the Collector main window. For information on displaying the results of the Dynamic Call Information queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
9 – PagFltInfo frame
Collecting Page Fault information on your application tells you where page faults are occurring and what addresses in your application are causing page faults. To collect Page Fault information on your application: o Compile and link your application with the PCA Collector o Run your application. This causes the PCA Collector to take control of your application. PCA diplays the Collector main window on your screen. o From the File pull-down menu, create a data file into which the Collector places performance data. o Choose the Page Faults query category. o Click on the query related to the specific page fault information you are interesting in collecting. o Click on Collect in the Collector main window. For information on displaying the results of the Page Faults queries, refer to: o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems o The online help for the PCA Analyzer.
10 – DisPerInfo frame
To display the results of the performance data you have collected on your application: o Invoke the Analyzer from the main PCA startup window o Select the query category you collected performance information on o Select the specific query you chose during the collection run The Analyzer diplays performance data in one of the following types of charts: o Histograms o Tables o Annotated source listings o Call trees For more information in displaying performance results, refer to: o The online help for the Analyzer o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems
11 – LnkColInfo frame
To compile and link your application with the PCA Collector: 1. Compile your sources with the "/DEBUG" qualifier; This puts all the necessary symbolic information PCA needs into the object file. 2. The following steps specifies the PCA Collector as your program's "debugger": i Link your program with the "/DEBUG" qualifier; ii Define the logical name LIB$DEBUG as PCA$COLLECTOR; 3. If PCAC$DECW$DISPLAY is defined ensure it is not set to " "; 4. If PCAC$DECW$DISPLAY is undefined ensure PCA$DECW$DISPLAY is not set to " "; 5. Define a valid display device: a. Either: i Use the "SET DISPLAY/CREATE/NODE=node-name" command to define the display device; b. Or: i Define the logical name DECW$DISPLAY as a valid display device; 6. Run your program; 7. When the Collector window appears on the screen, you have successfully invoked the Collector.
12 – HowToColl frame
To collect performance information on your application: o Compile and link your application with the PCA Collector o Issue the run command for your application. This causes the PCA Collector window to appear on your screen. o In the Collector window, click on the File pull-down menu and choose New Datafile... to create a data file into which the Collector places performance data. o Click on the Query Category button to see the Query Category menu, from which you can select the category of performance data you are interested in collecting. o Click on the specific query category you are interested in. This causes the specific queries for that query category to be displayed in the query pane at the bottom half of the Collector main window. o Click on the specific query related to the information you are intersted in collecting. o Click on Collect, in the middle of the Collector main window. o Invoke the Analyzer to see the results of your performance data collection. Note that you can collect information from only one query at a time. That is, you must do a separate collection run for each query you choose. You can append the results of multiple collection runs to one performance data file, allowing you to analyze all your performance data together. For more information on collecting and displaying performance information, refer to: o The online help, which is context-sensitive. This means you can click on any object in a PCA window and get help on it by simultaneously pressing the Help key on your keyboard while you press and hold MB1 on the mouse.For more information on using online help, see the Help menu on any PCA screen. o The hardcopy manual, Guide to DIGITAL Performance and Coverage Analyzer for OpenVMS Systems
13 – CCTPCAInfo frame