Admin Alert: Is It a Performance Issue or a Throughput Issue?
January 11, 2012 Timothy Prickett Morgan
It’s common for Power i users to complain their batch jobs are running too slowly. But is system capability responsible for slow batch throughput or could the problem be caused by poor work management procedures? This week, let’s look at a few scenarios where users say their batch jobs are running too slowly and discuss what, if anything (short of a hardware upgrade), can help speed up batch processing.
Getting To the Bottom of Slow Batch Processing
Users who feel that their batch work isn’t completing in a timely manner may blame that perceived slowness on the system hardware. This may or may not be true. Slowness covers a lot of issues and you may be able to generally boil down batch throughput issues to the following work management items.
Slowness in these areas can often be confused with poor system performance, where people may think the system isn’t powerful enough to run its assigned workload. Some people may even argue that a system upgrade is in order to allow the system to keep up with its work. Before you start specking out a Power 7 upgrade to improve batch throughput, look at these possible bottlenecks and solutions for improving throughput and user perceptions about system speed.
Work Management Issue #1: Lack of System Memory Assigned to Batch Subsystems
If you have a fair amount of system memory, slowness might be eased by reallocating that memory among your subsystem storage pools. Check your system to see whether lack of system memory may be hampering batch processing. For a good primer on memory analysis using IBM‘s Performance Adjuster, see this article on using the i5/OS Performance Adjuster to Better Manage Memory.
I’ve also had a lot of luck using Midrange Performance Group’s Performance Navigator software to create “State of the Union” reports that detail system performance issues. These reports are easy to understand and graphical (good for helping overview-oriented executives understand issues).
If you’re looking for just a one-time analysis that doesn’t require a software purchase, you can also contact your business partner (BP) to see if they provide free or discounted performance analysis services. I once worked with a BP who provided free system performance analyses, as needed. Another business partner arranged for a well-known software company to analyze my system at a discounted rate. Regardless of how you get this information, performance reports are helpful either for justifying new hardware purchases or for determining that the system is doing fine and running within acceptable parameters.
To ensure that your batch subsystems are getting enough memory to run jobs efficiently, I like to perform the following steps on my systems:
Work Management Issue #2: Check Your Throughput
Batch system processing is like comedy. Sometimes it all comes down to timing. Slow batch processing might be caused by system traffic, not system performance. The user who complains that their batch job or query is taking too long may merely be caught in line behind a long-running job. You may have batch system traffic jams when some of these situations exist.
Any of these situations can convince your users that the system is “running slow” when their work may just be parked behind other long-running jobs. To increase throughput, I usually recommend the following steps.
For more information on creating multiple job queues, see part one and part two of my articles on better subsystem throughput through multiple job queues. For information on creating a right-now job queue and subsystem, see this article on creating a high-priority batch subsystem.
Work Management Issue #3: Job Streams Not Running Within Their Allocated Time Frames
In my shop, we have overnight EOD jobs that perform additional processing on orders and must always be completed between 10 p.m. and 6 a.m. A lot of work happens during that time frame and we have sometimes had trouble making sure that our batch work is done by start of business the next day. If you’re in the same situation where long-running job streams must be finished in a specific time frame, consider using the following strategies.
Of Course, a Hardware Upgrade Could Also Help
After all this, be aware that a hardware upgrade may still be necessary if you’re suffering from low job throughput or slow response time. However, be sure to do your homework first to ensure that you’ve done everything you can to speed up system processing before adding more hardware.