GiAPA Tackles IBM i Performance Bottlenecks
March 11, 2020 Alex Woodie
IBM i shops that are frustrated with persistent performance problems may want to check out an innovative tool called GiAPA. Developed by the Danish firm iPerformance ApS, the tool has alleviated bottlenecks and saved millions of dollars for some of the biggest IBM i shops in the world. Kaare Plesner, the tool’s creator, recently shared his story with IT Jungle.
In the early 1980s, Plesner returned to Denmark after spending a year abroad working as a mainframe systems programmer. The System/38 was quickly being adopted, but Plesner noticed that it didn’t have the same level of operational tooling that he was accustomed to using in the mainframe world. He sensed an opportunity and pivoted to the midrange world, and became the first international distributor for HelpSystems.
Plesner began teaching a class called “S/38 for Professionals,” which would become “AS/400 for Professionals” after IBM launched the system in 1988. The classes, including the subsequent “AS/400 Inside” course, were very popular and were promoted by IBM.
During the classes, the students would often ask about ways to improve the performance of their programs, including better response times for interactive workloads or reduced runtimes for batch jobs. Plesner incorporated those requests into an offering that was a mix of education and consulting. Dubbed the “No cure, no pay” deal, the student was guaranteed their knowledge would translate into 25 percent increase in performance, or Plesner would not bill them. He never failed to invoice, he says.
Plesner used a mix of different tools to help students and clients. “I used different IBM tools, most often IBM’s PEX (Performance Explorer) for data collection,” he tells IT Jungle. “Realizing that I often also needed data showing how files were used. I wrote a program to run the DSPJOB (Display Job) command in a loop against a given problem job. Another new program analyzed the DSPJOB output data.”
Little by little, Plesner developed a range of small analyzer programs at various customer sites. Eventually, he had the making of a full-blown performance analysis suite that was capable of tackling a range of problems.
“An increasing number of ‘No cure, no pay’ assignments yielded the economic base for amalgamating all my small programs together into a marketable software product, including adding a performance data collector,” Plesner says. “In 2003 I sold the software agency and founded my current company iPerformance ApS based on the launching of GiAPA. Within three months, my new company was an IBM Business Partner.”
Since then, Plesner has taken GiAPA (pronounced “geh-pah”) to IBM i customer sites around the world. The majority of its customers are in northern Europe. But iPerformance ApS also has customers in the United States, Australia, and South America.
One of its biggest successes to date has been the optimization of IBM i applications at Kuehne + Nagel, the global Swiss logistics company. The company had consulted with a local IBM systems engineer, but was unable to improve its applications much. Plesner says GiAPA enabled him to identify a single line of code that reduced a batch job that was taking 90 minutes down to 8 minutes. Eventually Plesner analyzed all of the company’s IBM i servers, and the resulting performance optimization was worth the equivalent of $1.2 million in delayed hardware upgrades alone (not counting business improvements due to faster processing).
Part of what makes GiAPA different is how it stores performance data. Plesner says he devised a compressed binary format that enabled clients to store much more performance data than they would otherwise be comfortable allocating to disk. “Only minimal space was used by having field lengths in bits – e.g. file and program names with a standard length of 10 bytes occupy only 17 bits,” he says. Job IDs that are 26 bytes occupy only 25 bits in his compressed format.
GiAPA collects 22 types of resource data at 15 second intervals using IBM APIs (data for short-lived jobs that may have started and ended within the 15-second interval are gathered from the QHSTLOG, the company says). The software is automatically triggered to collect program and file information whenever a job exceeds 4 percent of CPU utilization. However, because the GiAPA job itself consumes only about 0.1 percent of CPU, most clients just leave it running continuously, which lets them immediately dig into the performance data whenever something goes awry.
Having GiAPA run continuously also gives users the benefit of being able to analyze the performance characteristics of any of their IBM i jobs. “A customer may acquire a GiAPA license because a given job needs a speed-up, but will also be able to see any other job that can be improved,” Plesner says. This changes the approach “from fire brigade type to preventive,” he adds.
GiAPA is available in both greenscreen and graphical formats. Once the tool has analyzed performance data, the results are available in a series of reports and graphs that tell the user about their jobs, such as which jobs caused performance problems, I/O bottlenecks, physical file usage, user-submitted queries, etc. The software also comes with a series of management interfaces that explain what jobs consumed the most resources, or consumption of resources by business unit.
The software can also make suggestions based on the performance usage patterns that it sees. For example, when a single routine is responsible for half the runtime of a given job, the software may recommend storing data in a user space object as opposed to a data area.
IBM i shops have a plethora of performance options available to them, particularly with today’s Power9 processors and speedy solid-state drives. But investing in hardware to boost performance can be expensive, and there’s no guarantee that it will solve individual performance problems. Considering that many performance problems can be traced to the code, Plesner encourages customers to exhaust software-based options for performance optimization before investing in hardware.
“Our main hurdle is maybe that our software simply sounds too good to be true,” he says. “Everyone knows that application performance optimization is very complex – it sounds unlikely that some software does that automatically. Fortunately, we today have many great references and documented results that entice potential customers to try out our product.”
You can read more information about GiAPA at www.giapa.com.