What is it all about? In today's tight economy many organizations are adopting application performance management policies to postpone upgrades and cut operation costs by tuning application systems.
The popular CICS performance monitors tell you immediately about any response time problem in your CICS regions. However, these monitors give you too little information about the most expensive and important resource – the CPU.
ICPU is a CICS sampling product that monitors the activity of the application programs and provides live and complete insight into the CPU usage of the application programs and the code within them.
ICPU uses a unique data collection technique in which the sampling results are kept in memory buffers, and are therefore available for inquiry at any time.
This unique infrastructure results in a low overhead tool (up to 5%) that does not affect production work, integrates easily with the application development lifecycle, and is available to everyone at any time.
ICPU’s advanced features give you new opportunities to save CPU cycles and streamline production activity by modifying your program code.
This design results in a user-friendly, interactive tool allowing you to watch the results continuously without having to stop the sampling and run a batch job.
ICPU innovative design includes the following features:
- Interactive operation – the sampling results are immediately available and can be viewed at any time as long as the sampling goes on.
- CPU breakdown – by pressing a PF key you can switch between the results for the QR TCB and all the other TCBs, such as L8, L9.
- User-friendly – ICPU is easy to use and provides meaningful, easy-to-understand results.
- Multi-user – any number of users can start an inspection and look at the results at any time, without affecting the overhead.
- Unattended operation – ICPU can be set up to start automatically when CICS comes up.
- Source listing – matching of sampling data directly to COBOL source programs.
- Standard coding – ICPU uses only standard z/OS/CICS interfaces.
- Online help – available from any screen.
- Filtering – by user/transaction/terminal/program.
- Batch reports – can be produced at anytime, even when sampling is still going on.
- Model inspections IDs – any previous inspection can be used as a model for a new inspection.
- Line command – can be used to start an inspection from any terminal type.
- Dynamic library support – For CICSTS 3.2 and above ICPU supports the dynamic library feature of CICS.
- Generic Inspection Ids – a shorthand method of assigning Inspection IDs and referring to them.
ICPU is constantly modified to improve its functionality and provide better solutions to its customers. For the highlights of the latest release please press here.
For a list of frequently asked questions about ICPU please press here.
ICPU can be installed in less than 1 hour and contains a set of demo programs which you can use to verify its functionality and familiarize yourself with the product.
Why ICPU? Sampling products are used to identify bottlenecks in application programs that can be eliminated by modifying the source code, in order to improve the performance of the CICS applications.
ICPU low overhead is the result of its design, which keeps the sampling results in memory buffers. All other sampling products record an execution trace resulting in a very large file and high overhead, which limits the sampling time and its applicability.
These sampling products are comprehensive, full-function performance products and to achieve their objectives a huge amount of performance information must be collected. However, most of this information is redundant because it is available from other sources, such as CICS, DB2 and Z/OS monitors.
The only information that is not available from other sources is the CPU usage information. The end result is that when you purchase one of these products, you pay a high price for their powerful capabilities which you usually do not use. You also pay a high price when you use the product, i.e. the high overhead and the cost of the expert analyzing the results. The strength of these powerful products is actually their weakness.
Anyone using the other sampling products knows their usage methodology. When there is a production performance problem a system expert will run the same script on the test system, stop the sampling, and then run a batch job to produce the reports. This methodology is not always successful since test and production systems are not alike, and sometimes a problem cannot be reproduced in the test environment.
ICPU usage methodology is completely different. ICPU will identify the exception when it occurs and record the program causing the exception and the offset within it allowing immediate investigation and eventual solution.
There is one question which you do not get an answer to from the other products: Which program is the highest CPU consumer? ICPU is the only product that gives you an answer to this question when you run ICPU over a whole day. This information opens new ways to save CPU cycles.
The other sampling products are cumbersome to use and difficult to understand and as a result, a critical component in an application performance management policy is missing.
Because of these limitations, these products are rarely used, while ICPU can be used on a daily basis by all personnel involved in the application lifecycle. This ensures that only optimal, highly supervised programs are moved into production.
No one should wait until an application is in production to discover that it does not run well – not only does it cost more to fix it, your application roll-out is delayed, your customers are not satisfied, and your reputation suffers.
It is estimated by some experts that fixing a performance problem at development time costs an eighth of what it costs to fix at production time.
ICPU provides new CPU savings opportunities even for well-performing applications. Consider, for example, a program that runs a million times a day under various transactions, all of them with a very good response time. Over a day’s work this program may be the highest CPU consumption program, a fact that the other tools are unable to detect as they cannot run over an extended period of time. Reducing each execution by 1 millisecond will save 16 CPU minutes per day, or more than 4000 minutes per year. At a rate of $12 per CPU minute, the yearly savings can be as much as $48,000. ICPU is the only CPU sampling product that can identify these offending programs and help you save CPU cycles.


