Java Performance Tuning

Java(TM) - see bottom of page

|home |services |training |newsletter |tuning tips |tool reports |articles |resources |about us |site map |contact us |
Tools: | GC log analysers| Multi-tenancy tools| Books| SizeOf| Thread analysers| Heap dump analysers|

Our valued sponsors who help make this site possible
JProfiler: Get rid of your performance problems and memory leaks! 

Training online: Concurrency, Threading, GC, Advanced Java and more ... 

Javva The Hutt May 19th, 2002

Get rid of your performance problems and memory leaks!

Modern Garbage Collection Tuning
Shows tuning flow chart for GC tuning

Java Performance Training Courses
COURSES AVAILABLE NOW. We can provide training courses to handle all your Java performance needs

Java Performance Tuning, 2nd ed
The classic and most comprehensive book on tuning Java

Java Performance Tuning Newsletter
Your source of Java performance news. Subscribe now!
Enter email:

Training online
Threading Essentials course

Get rid of your performance problems and memory leaks!

Back to newsletter 018 contents | All Javva's articles

Smaller, Faster, Better, Cheaper

What a headline. Smaller, faster, better, cheaper. No, that wasn't from a satirical version of the six million dollar man (though come to think of it, that's not such a bad idea. Maybe I should put together a proposal for the networks, it would be just as good as a lot of the other drivel I watch on the box). It was from the history of a dot-com millionaire was-a-be ( opposite to a wannabe, "waz-ah-bee", not wasabe as in Japanese green mustard). This guy had already been a paper millionaire for a bit. I was reading the article over at

The story itself would be amazing if it wasn't almost commonplace in the dot-bomb bubble. But that heading really caught my eye. After all, it is the ultimate goal of the performance tuner. We should make it into a bumper sticker. You know, like the double-entendres in "Accountants do it calculatingly" and "Racing drivers finish quicker".

"Good coders perform faster, better and are cheaper with smaller equipment". Ugh. Not so good huh? How about "Tuners make it smaller, faster, better and cheaper"? Just doesn't have that sound-bite feel to it. Oh well, if you can come up with a good one, tell me and I'll tell the rest of yoooze.

XP Epiphany

Sounds like a good name for a product. CRMish I think. In fact its another article over at Software Development mag (I don't have anything to do with them, honest guv).

This one caught my eye because the design process and the design ended up smaller, faster, better, cheaper. A good read. Sounds like a good seminar.

XP always seemed to me like a developer's dream and a managers nightmare. It's really the way I'd like to develop. You get to do half the work while you chat to a fellow coder and do all the easy bits. There's no boring test cases to do after you've finished coding, because all the test cases are what you've been coding in the first place. And snooty know-it-all designers are reduced to glorified QA guys. Okay, maybe its not quite like that, and I haven't met a snooty designer in a long time, but it sounds like fun.

Diary of a Hutt

April 25. Lunch with Parsons. Third time in the last two weeks. Deliberate ploy on my part. I'm trying to get him to recommend another round of tuning on the server. Feed him various BS about new JVM versions, awesome improvements, potential significant speedups, etc. He's really going for it.

April 30. Frezian tells me he is working on getting me to do another round of performance tuning on the server. Confides in me that he has heard about potential significant speedups, and he is now working on convincing Parsons. Bigmouth tells me he overheard Parsons telling Frezian about potential significant speedups ...

May 2. Start setting up customized performance tuning environment. I need this to be mostly standard, but just obscure enough that no-one else is going to be able to use it without detailed instructions from me.

May 7. Do a recursive search on the repository to find all classes authored by Weevil. Then I run some preliminary profiles on the server. Take the top fifty classes in the various profiles, plus all of Weevils classes, and put that in as the filter for all future profiles. Don't you just love these modern profilers, it's a wonder what they can do. Weevil's classes will seem to dominate any profile if you look at lots of classes. Now I'm almost ready to present preliminary findings. Just a little more to do.

May 9. Build a script which adds various information to profile output: time last changed, version, author. Author is the only one I care about, but it would be too obvious without some others. Frezian requires reports for next week.

May 14. Full meeting. SquintFace notices the predominence of Weevils name in the profile outputs, and points it out. Frezian scrutinizes the "author" column. Weevil wants to see the profiler in action. No problem. We break away after AOB and about five, including Frezian, watch as I run through some basic profiling. Inevitably, some of the bigger bottlenecks include Weevil's classes, so I choose one of those to dive into and start analyzing. Couldn't have been better if I had prepared it! He was creating half a dozen redundant objects repeatedly in a loop. Frezian mutters something about possibly needing code reviews for some of the "weaker" developers. Weevil looks like he could start foaming at the mouth any time soon.

(Note: all names have been changed to protect the guilty).


Javva The Hutt.

Back to newsletter 018 contents

Last Updated: 2024-01-29
Copyright © 2000-2024 All Rights Reserved.
All trademarks and registered trademarks appearing on are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
RSS Feed:
Trouble with this page? Please contact us