AIX > Administrator > Performance

PerfPMR Part 4: Adding Custom Scripts

AIX scripts

Now, fire up PerfPMR. The script is executed about halfway through the run. Doing a listing in your PerfPMR data directory, you should see the gensyms.out, curt.all and splat.all files created fairly early on. The number of commands you add to the file is entirely up to you. Add one or add a dozen, the choice is yours. Just remember to use that full path name to any command you do decide to add!

More Ideas

For those of you who are very proficient at shell scripting, AWK or C programming, the diagnostic and tuning tasks you can execute during a PerfPMR run with additions to the file are practically limitless. You can tell PerfPMR to look for any number of performance detracting conditions in a system and respond by tweaking CPU, memory, networking or storage tuning parameters appropriately. If/then statements are marvelous for this. Many administrators work at sites that require homegrown diagnostic programs be run when a system exhibits performance problems. You can add these to the file, along with explanatory comments. Then when you package up all of the files PerfPMR generates and upload them to IBM, the folks who do the analyzing will know specifically what you’re looking for. Also, many sites have adopted NMON as their default performance monitoring program. If your site is one of them, tell PerfPMR that you want certain nmon data captured during a diagnostic run, and you’ll have it available to you.

My best advice when it comes to adding functionality to PerfPMR via is to use your imagination. More performance data versus less is always better, so add whatever you think can make the diagnostic process more complete. Experiment (on a test system, of course), and by all means, post your working customizations to the web. It’s likely many more administrators will find value in what you’ve done.

In Conclusion

Over the past four months, I've endeavored to show how you can customize your PerfPMR usage to suit your diagnostic needs. While it's true that the vanilla execution of PerfPMR – the standard 600 – is suitable for many situations, in my experience, administrators don't often need the entire suite of PerfPMR scripts. They may prefer to zero in on the particular CPU, memory, storage or networking issue they're experiencing, or tailor how PerfPMR's utilities present them with the diagnostic data they need. Also, the deep dive diagnostic tools like kernel and lock traces are generally a mystery to these same admins, so I hope I've shed light on these complex tools so can use them more successfully in your own diagnostic efforts.

We've covered the setup, customization and interpretation of many of PerfPMR's scripts. I've shown you how to extract advanced reports like CURT and SPLAT from your trace data, and how to use flags to most of those scripts to best illuminate your performance issues. My goal has been to help you better understand your issues with the AIX operating system and any databases, applications, middleware or utilities that run on it. In the end, my hope is you will better understand what's happening with your system's performance and be able to communicate those issues effectively with your peers, management, IBM support teams ... and me.

Mark J. Ray has been working with AIX for 23 years, 18 of which have been spent in performance. His mission is to make the diagnosis and remediation of the most difficult and complex performance issues easy to understand and implement. Mark can be reached at

Like what you just read? To receive technical tips and articles directly in your inbox twice per month, sign up for the EXTRA e-newsletter here.

comments powered by Disqus



2019 Solutions Edition

A Comprehensive Online Buyer's Guide to Solutions, Services and Education.

Achieving a Resilient Data Center

Implement these techniques to improve data-center resiliency.


AIO: The Fast Path to Great Performance

AIX Enhancements -- Workload Partitioning

The most exciting POWER6 enhancement, live partition mobility, allows one to migrate a running LPAR to another physical box and is designed to move running partitions from one POWER6 processor-based server to another without any application downtime whatsoever.

IBM Systems Magazine Subscribe Box Read Now Link Subscribe Now Link iPad App Google Play Store
IBMi News Sign Up Today! Past News Letters