Picture the following scenario: You're an IT manager at a small- to mid-sized System i (aka AS/400, iSeries, or System i5) shop. You love System i. It's secure. It's simple to administer and use. And it never breaks down. Combined, these factors translate into a lower total cost of ownership (TCO).

There's just one problem. Your System i box appears to be running out of horsepower. Interactive jobs are slow and running up against capacity constraints. Due to ever-expanding information processing demands in your company, response times for interactive jobs will soon be unacceptable, if that's not already the case. You'd like to upgrade your System i server, but you don't have a budget for that, and it will be months, at best, before you can get the necessary funds approved and then buy and install the new server. Depending on the nature of your System i processing load, MAX400 may provide an answer to this dilemma.

MAX400 was developed about three years ago by MAX400 Company Ltd., a South Korean firm that also created a number of other System i-based products, including MAXPDA, MAXWEB, and MAXFILE. Until recently, sales of MAX400 were limited to the Asia-Pacific region, close to the developer's headquarters. However, the company recently expanded sales of MAX400 worldwide, and the software is now marketed in North America by California-based Fax*Star, a division of Sepe Inc.

Interactive Workload Tuning

OS/400 and i5/OS include a governor, CFINT, which is an internal task that handles system interrupts and intentionally consumes CPU resources in order to slow interactive activity to predefined levels. There is one CFINT task (named CFINT01, CFINT02, etc.) for each processor. MAX400 tunes System i processes to avoid the CFINT governor restraints and, therefore, maximizes the resources available to interactive jobs, thereby avoiding the artificial constraints placed on them.

How does MAX400 overcome these operating limits? In effect, it tells the operating system to treat interactive jobs as if they were batch jobs. It thus maximizes the Commercial Processing Workload (CPW) available to interactive jobs, without the need to purchase and install any additional System i features. Consequently, you can use MAX400 to inexpensively provide interactive jobs with additional capacity during peak demand times.

One important aspect to note about MAX400 is that it does not modify IBM Licensed Internal Code (LIC). In fact, because the software is not written into the IBM code, if you IPL your system, you will have to resubmit the MAX400 job if you want to continue running it. Furthermore, because it is an independent utility, if you want to uninstall MAX400, you simply delete it from the system. Then, when you IPL the system, there will be no trace of MAX400 on the system.

So what is MAX400? It's a small utility that scans the system at regular intervals and resets certain flags within jobs that indicate whether the job has sent I/O to a display device. When these flags are turned on, the job may be slowed down by the CFINT governor, depending on the preset interactive limits defined by the server model. The operating system does this by inserting CPU-consuming loops into the job's time slice, which it credits toward the CFINT tasks, thereby reducing the processor time available for all jobs. Additionally, the system may trigger other types of interactive delays that are not visible via CFINT. MAX400 resets these flags and tunes specific performance-tracking data used to calculate whether excess interactive consumption is occurring. When the flags are reset, the CFINT governor does not then count these jobs as interactive. Because MAX400 only monitors and modifies the memory areas of interactive jobs, it does not interfere with the operations of other jobs.

MAX400, which can be downloaded as a 50K zipped file, works with a wide range of OS/400 and i5/0S versions—from V4R1 right up to the current version, V5R4. It is easy to install using RSTLIB and can typically be ready to run in under five minutes.

Fax*Star expects that many companies will use MAX400 as a temporary solution to deal with capacity constraints. To cost-effectively address this requirement, Fax*Star offers MAX400 on a leased basis with a variety of lease durations, but you can also buy a license. License and leasing fees vary based on the P Group of your system.

Testing MAX400

Fax*Star offers a free trial license for MAX400. The company encourages prospective customers to test the software to evaluate the potential performance benefits. The software developer recommends the following test, which should be performed when online users will not be affected because, to provide a basis of comparison, it will initially consume virtually all available interactive capacity:

Copy the following code into a source member and compile it as a CL program:

PGM

DCL VAR(&DUMMY) TYPE(*CHAR) LEN(1)

LOOP: CHGVAR VAR(&DUMMY) VALUE(&DUMMY)

GOTO CMDLBL(LOOP)

ENDPGM.

This program runs in a loop and consumes large amounts of CPW.

Start two interactive sessions and call the above program from each of those sessions. These can be stopped later using SysReq 2. It is necessary to run the above program from two separate sessions because the system allows a single session to run without constraint.

Monitor system activity from a third session using WRKSYSACT or any other monitoring tool at your disposal. Initially, the jobs will use about 50% of the CPU each, or the full amount available for the partition. After a while (a few seconds or minutes, depending on the system model), the jobs will slow down and the CFINTnn tasks will consume a lot more of the CPU.

Start MAX400 and continue monitoring the system. The jobs should soon return to using 50% of the CPU each. It may be necessary to first pause or stop the interactive looping jobs before starting MAX400 if the system is responding very slowly.

Alternatively, use WRKACTJOB to see how much capacity interactive jobs are consuming in total and compare that with the stated system capacity.

Performance improvements under this test and in actual use may not be immediate. When you start MAX400, it spends a little time testing your system response. It may, therefore, be a few seconds or, if the system is particularly busy, a few minutes before MAX400 starts working.

For more information on MAX400, please contact Fax*Star at the address listed below.