A set of sample Report Forms is provided with CICS PA. See Table 1 for the sample SUMMARY Report Forms. You can use these sample Report Forms with your Transaction Profiling reports to provide detailed comparisons of the many aspects affecting CICS® system performance.
The following examples show progressively more complex uses for the Transaction Profiling report.
Example 1: Comparing data using the default form
This example compares data from two sets of SMF files. The report data resides in the SMF files identified by the DDname SMFIN001, and the baseline data resides in the SMF files identified by SMFIN002. This example contains no FIELDS operands, so, to summarize the data, the report uses the default SUMMARY Report Form shown in Figure 1.
CICSPA IN(SMFIN001),
PROFILING(REPORT(SMF)),
IN(SMFIN002),
PROFILING(BASELINE(SMF),
NOTOTALS)
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:24:50 5/02/2006 to 17:27:15 5/02/2006
Baseline Data from 16:21:47 5/02/2006 to 16:23:42 5/02/2006
Avg Avg Avg Avg Avg Avg Avg Avg Avg Avg
Tran #Tasks Response Dispatch User CPU Suspend DispWait FC Wait FCAMRq IR Wait SC24UHWM SC31UHWM
Time Time Time Time Time Time Count Time Count Count
DB2D Report 560 .0504 .0057 .0017 .0446 .0028 .0000 0 .0000 1040 1296
DB2D Baseline 448 .0369 .0047 .0018 .0322 .0015 .0000 0 .0000 1040 1296
Delta +112 +.0134 +.0010 -.0000 +.0125 +.0012 +.0000 +0 +.0000 +0 +0
Change% +25.00 +36.43 +20.59 -2.41 +38.77 +79.51 +.00 +.00 +.00 +.00 +.00
DCO1 Report 560 .0598 .0011 .0005 .0587 .0059 .0000 0 .0000 976 1296
GLCT Report 560 .0543 .0005 .0004 .0538 .0023 .0000 0 .0000 0 0
GLCT Baseline 448 .0432 .0005 .0003 .0427 .0012 .0000 0 .0000 0 0
Delta +112 +.0111 +.0000 +.0000 +.0111 +.0011 +.0000 +0 +.0000 +0 +0
Change% +25.00 +25.82 +7.37 +10.61 +26.03 +92.24 +.00 +.00 +.00 +.00 +.00
The row headings Report, Baseline, Delta, and Change% appear between the column for the last key field (in this case, there is only one), TRAN, represented by the column heading Tran, and the first non-key field, TASKCNT, represented by the column heading #Tasks. For a cross-reference between field names and column headings, see CMF Field IDs by CICS version.
For each line of summarized report data, the report contains a block of lines followed by a blank line. This example report contains three blocks of lines, one for each unique key field value (transaction ID) in the report data. The NOTOTALS operand suppresses the block of lines for the grand total that would otherwise appear at the bottom of the report (with the heading "Total" instead a key field value).
Notice that, in the blocks for transaction IDs DB2D and GLCT, the key field value appears twice. The top value is the key field from the report data; this always appears on the top line of each block, next to the Report line heading. The bottom value is the key field from the matching baseline data; this only appears if there is matching baseline data, and then only if the block would normally contain at least one other line in addition to the Report line. The block for transaction ID DC01 shows no baseline key field value, for two reasons:
DCO1 Report 560 .0598 .0011 .0005 .0587 .0059 .0000 0 .0000 976 1296
Baseline
Delta
Change%
That is, with blank lines, but still no key field value for baseline data.
Example 2: Comparing data using a specified form
This example compares data using a Report Form specified by the FIELDS operand. In this example, the Report Form is the sample form CPUSUM1 provided with CICS PA.
CICSPA INPUT(SMFIN001),
PROFILING(REPORT(SMF),
FIELDS(TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
QRCPU(TIME(AVE)),
MSCPU(TIME(AVE)),
ROCPU(TIME(AVE)),
KY8CPU(TIME(AVE)),
KY9CPU(TIME(AVE)))),
INPUT(SMFIN002),
PROFILING(BASELINE(SMF))
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:24:50 5/02/2006 to 17:27:15 5/02/2006 Page 1
Baseline Data from 16:21:47 5/02/2006 to 16:23:42 5/02/2006
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Tran #Tasks Response Response Dispatch User CPU Suspend DispWait QR CPU MS CPU RO CPU KY8 CPU KY9 CPU
Time Time Time Time Time Time Time Time Time Time Time
DB2D Report 560 .0504 1.1744 .0057 .0017 .0446 .0028 .0007 .0000 .0000 .0010 .0001
DB2D Baseline 448 .0369 .3085 .0047 .0018 .0322 .0015 .0006 .0000 .0000 .0010 .0001
Delta +112 +.0134 +.8660 +.0010 -.0000 +.0125 +.0012 +.0000 -.0000 -.0000 -.0001 -.0000
Change% +25.00 +36.43 +280.73 +20.59 -2.41 +38.77 +79.51 +3.89 -32.17 -32.17 -5.82 -5.22
DCO1 Report 560 .0598 1.4905 .0011 .0005 .0587 .0059 .0005 .0000 .0000 .0000 .0000
DCO1 Baseline 448 .0472 .7251 .0010 .0005 .0463 .0031 .0005 .0000 .0000 .0000 .0000
Delta +112 +.0126 +.7654 +.0001 +.0000 +.0125 +.0028 +.0000 -.0000 -.0000 +.0000 +.0000
Change% +25.00 +26.67 +105.56 +12.78 +7.70 +26.97 +90.89 +8.50 -23.68 -23.68 +.00 +.00
GLCT Report 560 .0543 1.3972 .0005 .0004 .0538 .0023 .0004 .0000 .0000 .0000 .0000
GLCT Baseline 448 .0432 .6345 .0005 .0003 .0427 .0012 .0003 .0000 .0000 .0000 .0000
Delta +112 +.0111 +.7627 +.0000 +.0000 +.0111 +.0011 +.0000 -.0000 -.0000 +.0000 +.0000
Change% +25.00 +25.82 +120.21 +7.37 +10.61 +26.03 +92.24 +11.59 -16.24 -16.24 +.00 +.00
Total Report 1680 .0548 1.4905 .0024 .0009 .0524 .0037 .0005 .0000 .0000 .0003 .0000
Baseline 1344 .0424 .7251 .0021 .0009 .0404 .0019 .0005 .0000 .0000 .0003 .0000
Delta +336 +.0124 +.7654 +.0004 +.0000 +.0120 +.0017 +.0000 -.0000 -.0000 -.0000 -.0000
Change% +25.00 +29.21 +105.56 +18.34 +1.22 +29.77 +88.17 +7.16 -23.77 -23.77 -5.82 -5.22
Example 3: Comparing a subset of fields in the report data
Suppose that you are interested in the values of several fields of report data, but you are only interested in comparing one, or a few, of these fields with baseline data. To do this, you specify a Baseline Form with the same key fields as the Report Form, but fewer non-key fields, as shown in this example.
CICSPA INPUT(SMFIN001),
PROFILING(REPORT(SMF),
FIELDS(TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
QRCPU(TIME(AVE)),
MSCPU(TIME(AVE)),
ROCPU(TIME(AVE)),
KY8CPU(TIME(AVE)),
KY9CPU(TIME(AVE)))),
INPUT(SMFIN002),
PROFILING(BASELINE(SMF),
FIELDS(TRAN(ASCEND),
RESPONSE(AVE)))
In this example, the Transaction Profiling report groups and summarizes the report data and the baseline data using the same single key field, TRAN, but only includes baseline data values for the average response times.
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:24:50 5/02/2006 to 17:27:15 5/02/2006 Page 1
Baseline Data from 16:21:47 5/02/2006 to 16:23:42 5/02/2006
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Tran #Tasks Response Response Dispatch User CPU Suspend DispWait QR CPU MS CPU RO CPU KY8 CPU KY9 CPU
Time Time Time Time Time Time Time Time Time Time Time
DB2D Report 560 .0504 1.1744 .0057 .0017 .0446 .0028 .0007 .0000 .0000 .0010 .0001
DB2D Baseline .0369
Delta +.0134
Change% +36.43
DCO1 Report 560 .0598 1.4905 .0011 .0005 .0587 .0059 .0005 .0000 .0000 .0000 .0000
DCO1 Baseline .0472
Delta +.0126
Change% +26.67
GLCT Report 560 .0543 1.3972 .0005 .0004 .0538 .0023 .0004 .0000 .0000 .0000 .0000
GLCT Baseline .0432
Delta +.0111
Change% +25.82
Total Report 1680 .0548 1.4905 .0024 .0009 .0524 .0037 .0005 .0000 .0000 .0003 .0000
Baseline .0424
Delta +.0124
Change% +29.21
Example 4: Excluding changes that are insignificant to you
This is identical to the previous example, except that this example introduces the operands THRESHOLD(30) and PRINT(EXCEPTIONSONLY).
THRESHOLD(30) sets the minimum threshold for changes (report data values greater than baseline data values) at +30%. PRINT(EXCEPTIONSONLY) excludes from the report any blocks of report data where all of the change values are within the threshold. THRESHOLD(30) does not contain a second value, for negative changes, so any negative change values are also considered to be within this specified threshold, and would be excluded.
CICSPA INPUT(SMFIN001),
PROFILING(REPORT(SMF),
THRESHOLD(30),
PRINT(EXCEPTIONSONLY),
FIELDS(TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
QRCPU(TIME(AVE)),
MSCPU(TIME(AVE)),
ROCPU(TIME(AVE)),
KY8CPU(TIME(AVE)),
KY9CPU(TIME(AVE)))),
INPUT(SMFIN002),
PROFILING(BASELINE(SMF),
FIELDS(TRAN(ASCEND),
RESPONSE(AVE)))
Notice that, in addition to excluding blocks of summarized data for unique key field value, leaving only the block for transaction ID DB2D), the PRINT(EXCEPTIONSONLY) operand has also excluded the Total block. If the overall change value for average response time had been +30% or greater, then the report would have shown the Total.
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:24:50 5/02/2006 to 17:27:15 5/02/2006 Page 1
Baseline Data from 16:21:47 5/02/2006 to 16:23:42 5/02/2006
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Tran #Tasks Response Response Dispatch User CPU Suspend DispWait QR CPU MS CPU RO CPU KY8 CPU KY9 CPU
Time Time Time Time Time Time Time Time Time Time Time
DB2D Report 560 .0504 1.1744 .0057 .0017 .0446 .0028 .0007 .0000 .0000 .0010 .0001
DB2D Baseline .0369
Delta +.0134
Change% +36.43
Example 5: Comparing data summarized by time interval
This example uses a Report Form, sample form TRTODSUM, that includes a time stamp key field, transaction stop time (STOP). When a form includes a time stamp key field, the INTERVAL operand specifies a time interval for summarizing input records based on their time stamp values. In this example, the INTERVAL(00:05:00) operand summarizes input records, based on their transaction stop times, at intervals of five minutes.
The TOTALS(2) operand instructs the report to print subtotals for each group of values for sort key field 2 that share the same higher-level key field values. In this example, the effect is to show subtotals for each five-minute time interval.
CICSPA INPUT(SMFIN001),
PROFILING(REPORT(SMF),
INTERVAL(00:05:00),
TOTALS(2),
FIELDS(STOP(TIMES,ASCEND),
TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
FCWAIT(TIME(AVE)),
FCAMCT(AVE),
IRWAIT(TIME(AVE)),
SC24UHWM(AVE),
SC31UHWM(AVE))),
INPUT(SMFIN002),
PROFILING(BASELINE(SMF),
INTERVAL(00:05:00))
For brevity, this example report shows only a single time interval. Typically, such a report would cover more time intervals: 17:30:00, 17:35:00, etc.
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:25:01 5/02/2006 to 17:27:15 5/02/2006 Page 1
Baseline Data from 17:24:50 5/02/2006 to 17:26:58 5/02/2006
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Stop Tran #Tasks Response Response Dispatch User CPU Suspend DispWait FC Wait FCAMRq IR Wait SC24UHWM SC31UHWM
Interval Time Time Time Time Time Time Time Count Time Count Count
17:25:00 DB2D Report 520 .0344 .0848 .0018 .0016 .0326 .0015 .0000 0 .0000 1040 1296
17:25:00 DB2D Baseline 456 .0344 .0848 .0018 .0016 .0326 .0014 .0000 0 .0000 1040 1296
Delta +64 -.0000 +.0000 -.0000 -.0000 -.0000 +.0000 +.0000 +0 +.0000 +0 +0
Change% +14.04 -.08 +.00 -.71 -.32 -.04 +2.02 +.00 +.00 +.00 +.00 +.00
17:25:00 DCO1 Report 520 .0391 .1164 .0008 .0005 .0383 .0034 .0000 0 .0000 976 1296
17:25:00 DCO1 Baseline 456 .0392 .1164 .0008 .0005 .0383 .0034 .0000 0 .0000 976 1296
Delta +64 -.0000 +.0000 -.0000 +.0000 -.0000 +.0000 +.0000 +0 +.0000 +0 +0
Change% +14.04 -.06 +.00 -.20 +.42 -.05 +.22 +.00 +.00 +.00 +.00 +.00
17:25:00 GLCT Report 520 .0349 .0856 .0003 .0004 .0345 .0000 .0000 0 .0000 0 0
17:25:00 Report 1560 .0361 .1164 .0010 .0008 .0351 .0016 .0000 0 .0000 672 864
17:25:00 Baseline 1368 .0353 .1164 .0011 .0009 .0343 .0016 .0000 0 .0000 672 1888
Delta +192 +.0008 +.0000 -.0001 -.0001 +.0009 +.0000 +.0000 +0 +.0000 +0 -1024
Change% +14.04 +2.24 +.00 -8.67 -5.77 +2.59 +.75 +.00 +.00 +.00 +.00 -54.24
Total Report 1560 .0361 .1164 .0010 .0008 .0351 .0016 .0000 0 .0000 672 864
Baseline 1488 .0547 1.4905 .0027 .0009 .0520 .0037 .0000 0 .0000 672 1888
Delta +72 -.0186 -1.3741 -.0017 -.0001 -.0168 -.0021 +.0000 +0 +.0000 +0 -1024
Change% +4.84 -33.93 -92.19 -63.80 -12.08 -32.37 -55.80 +.00 +.00 +.00 +.00 -54.24
As shown in this example, the subtotals and grand total in the Transaction Profiling report might appear to be inconsistent with each other, and also with the blocks of data for each unique key value. This is because the subtotals and grand totals in the Transaction Profiling report are based on the subtotals and grand totals of the separately summarized report data and the baseline data, not just the consolidated data with matching key field values printed in the Transaction Profiling report. So the subtotals and grand totals for the baseline data represent all rows of summarized baseline data, not just those rows whose key field values match rows of report data.
Example 6: Comparing several time intervals of report data with a single set of baseline data
This example uses a Report Form with a time stamp key field summarized over intervals of five minutes, and a Baseline Form without a time stamp key field, so that the baseline data is summarized without time intervals.
You can use this technique to compare time intervals within a day with a single set of data representing the average for an entire day. As shown in this example, the report data and the baseline data can have the same source (notice that there is only one INPUT operand), so you can compare time intervals within a day with the average across the same day.
CICSPA INPUT(SMFIN001),
PROFILING(REPORT(SMF),
INTERVAL(00:05:00),
TOTALS(2),
FIELDS(STOP(TIMES,ASCEND),
TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
FCWAIT(TIME(AVE)),
FCAMCT(AVE),
IRWAIT(TIME(AVE)),
SC24UHWM(AVE),
SC31UHWM(AVE))),
PROFILING(BASELINE(SMF),
FIELDS(TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
FCWAIT(TIME(AVE)),
FCAMCT(AVE),
IRWAIT(TIME(AVE)),
SC24UHWM(AVE),
SC31UHWM(AVE)))
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 17:25:01 5/02/2006 to 17:27:15 5/02/2006 Page 1
Baseline Data from 10:00:00 5/02/2006 to 17:30:00 5/02/2006
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Stop Tran #Tasks Response Response Dispatch User CPU Suspend DispWait FC Wait FCAMRq IR Wait SC24UHWM SC31UHWM
Interval Time Time Time Time Time Time Time Count Time Count Count
17:25:00 DB2D Report 520 .0344 .0848 .0018 .0016 .0326 .0015 .0000 0 .0000 1040 1296
DB2D Baseline 41600 .0504 1.1744 .0057 .0017 .0446 .0028 .0000 0 .0000 1040 1296
Delta -41080 -.0159 -1.0896 -.0039 -.0001 -.0121 -.0013 +.0000 +0 +.0000 +0 +0
Change% -98.75 -31.65 -92.78 -68.13 -7.17 -27.00 -46.52 +.00 +.00 +.00 +.00 +.00
17:25:00 DCO1 Report 520 .0391 .1164 .0008 .0005 .0383 .0034 .0000 0 .0000 976 1296
DCO1 Baseline 41600 .0598 1.4905 .0011 .0005 .0587 .0059 .0000 0 .0000 976 1296
Delta -41080 -.0207 -1.3741 -.0003 -.0000 -.0204 -.0025 +.0000 +0 +.0000 +0 +0
Change% -98.75 -34.57 -92.19 -24.57 -4.68 -34.76 -42.01 +.00 +.00 +.00 +.00 +.00
17:25:00 GLCT Report 520 .0349 .0856 .0003 .0004 .0345 .0000 .0000 0 .0000 0 0
GLCT Baseline 41600 .0543 1.3972 .0005 .0004 .0538 .0023 .0000 0 .0000 0 0
Delta -41080 -.0194 -1.3115 -.0002 -.0000 -.0193 -.0023 +.0000 +0 +.0000 +0 +0
Change% -98.75 -35.81 -93.87 -38.40 -2.44 -35.79 -100.00 +.00 +.00 +.00 +.00 +.00
17:25:00 Report 1560 .0361 .1164 .0010 .0008 .0351 .0016 .0000 0 .0000 672 864
Baseline 124800 .0548 1.4905 .0024 .0009 .0524 .0037 .0000 0 .0000 672 864
Delta -123240 -.0187 -1.3741 -.0014 -.0001 -.0172 -.0020 +.0000 +0 +.0000 +0 +0
Change% -98.75 -34.09 -92.19 -59.54 -5.99 -32.91 -55.38 +.00 +.00 +.00 +.00 +.00
Total Report 1560 .0361 .1164 .0010 .0008 .0351 .0016 .0000 0 .0000 672 864
Baseline 124800 .0548 1.4905 .0024 .0009 .0524 .0037 .0000 0 .0000 672 864
Delta -123240 -.0187 -1.3741 -.0014 -.0001 -.0172 -.0020 +.0000 +0 +.0000 +0 +0
Change% -98.75 -34.09 -92.19 -59.54 -5.99 -32.91 -55.38 +.00 +.00 +.00 +.00 +.00
Example 7: Identifying poorly performing transactions by time of day
This example identifies poorly performing transactions by comparing report data from SMF files with baseline data in an HDB that contains ideal, or expected, response times for each transaction ID.
As in the previous example, this Transaction Profiling report summarizes report data over time intervals, but summarizes the baseline data without time intervals. For each time interval of summarized report data, the Transaction Profiling report compares the average response time of each transaction ID with an average response time for that transaction ID from the summarized baseline data. The summarized baseline data consists only of two fields: the transaction IDs and their corresponding average response times, independent of any time intervals.
In this example, the baseline data is stored in an HDB named EXAMPLE. This HDB was loaded with data selected from a "good" day; its only purpose is to provide the expected results for this Transaction Profiling report.
The REPORT and CHANGE values of the PRINT operand instruct the report to print only the Report and Change% lines. THRESHOLD(25) sets the minimum threshold for changes at +25%. The EXCEPTIONSONLY value of the PRINT operand excludes from the report any blocks of report data where all of the change values are within the threshold. The Baseline Form specifies only a single non-key field, average response time, so EXCEPTIONSONLY causes the report to show blocks of report data only where the average response time is at least 25% higher than the expected value.
CICSPA IN(SMFIN001),
PROFILING(REPORT(SMF),
PRINT(REPORT,CHANGE,EXCEPTIONSONLY),
INTERVAL(00:15:00),
THRESHOLD(25),
TITLE('Performance exceptions against saved baseline'),
FIELDS(STOP(TIMES,ASCEND),
TRAN(ASCEND),
TASKCNT,
RESPONSE(AVE),
RESPONSE(MAX),
DISPATCH(TIME(AVE)),
CPU(TIME(AVE)),
SUSPEND(TIME(AVE)),
DISPWAIT(TIME(AVE)),
FCWAIT(TIME(AVE)),
FCAMCT(AVE),
IRWAIT(TIME(AVE)),
SC24UHWM(AVE),
SC31UHWM(AVE))),
PROFILING(BASELINE(EXAMPLE),
FIELDS(TRAN(ASCEND),
RESPONSE(AVE)))
Comparing report data and baseline data using a single non-key field enables you to produce a Transaction Profiling report that identifies a particular symptom, such as excessive response time. You can then examine the values of other fields in the report data to begin diagnosing the cause of the problem.
V3R2M0 CICS Performance Analyzer
Transaction Profiling
__________________________________________________
PROF0001 Printed at 12:03:45 3/15/2011 Report Data from 15:18:27 5/02/2006 to 17:31:01 5/02/2006 Page 1
Baseline Data from 15:18:00 5/02/2006 to 17:31:00 5/02/2006
Performance exceptions against saved baseline
Avg Max Avg Avg Avg Avg Avg Avg Avg Avg Avg
Stop Tran #Tasks Response Response Dispatch User CPU Suspend DispWait FC Wait FCAMRq IR Wait SC24UHWM SC31UHWM
Interval Time Time Time Time Time Time Time Count Time Count Count
16:15:00 CLS1 Report 2 .5281 1.0407 .0052 .0019 .5228 .0018 .0000 0 .0000 0 0
CLS1 Change% +221.42
17:15:00 CLQ2 Report 2 1.0209 1.0257 .0034 .0012 1.0175 .0042 .0000 0 .0000 0 0
CLQ2 Change% +49.64
17:15:00 CQPI Report 1 .0048 .0048 .0012 .0007 .0036 .0004 .0000 0 .0000 0 0
CQPI Change% +72.82
17:15:00 CQPO Report 1 1.0137 1.0137 .0209 .0044 .9928 .0007 .0000 0 .0000 0 0
CQPO Change% +94.86