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|

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

Training online: Threading Essentials course 

Newsletter no. 19, June 27th, 2002

Get rid of your performance problems and memory leaks!

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!

As promised, we have started the two new columns on performance tools this month, with articles on Steve Souza's JAMon and EJ-Technologies JProfiler. On the other hand, June seems to be holiday time at, with both myself and Kirk taking some personal time. Consequently Kirk's column is on hold this month, as is my extracted tips section. But I've still listed the interesting performance related articles over the last month. And this month I list the largest number we've seen in one month, so last month's meagre offering was not indicative of a trend.

JavvaTheHutt did not take personal time this month, but on hearing that Kirk and I were shirking our columns, he tried to conform to present a united front. However, after a little cajoling from me, he decided to deliver his usual interesting thoughts on his latest websurfing, as well as his diary. Visit his column at Javva The Hutt

If you feel this newsletter could be useful to a friend, why not send them the URL. Note also that Yukio Andoh's Japanese translation will hopefully be available at in a while.

A note from this newsletter's sponsor

Precise Software revolutionizes J2EE Application Performance
Management with automatic problem detection & correction. Read
our white paper on how to instantly isolate J2EE bottlenecks.

Reminder to vendors and creators of performance tools

As part of our ongoing commitment to informing our readers about performance tools, presents one commercial tool and one non-commercial tool each month. If you are a vendor or creator of such a tool, and would like to have your tool presented, please contact me from But do please note that we work on a first-completed, first-published basis. There is already a queue of vendors and freeware authors creating submissions for this column, so if you want your tool to be presented in the near future, contact us sooner rather than later.

Tool reports


Java performance tuning related news.


Recent Articles

Jack Shirazi

Kirk's roundup

Kirk will return next month.

Kirk Pepperdine.

Javva The Hutt

Ooh, what a doozy of a title. Found this over at It's about worms like Code Red taking over internet linked machines. The authors performance tuned the worms to see how fast they could threaten the internet. Yes that's right, I said these guys are performance tuning worms. And they get them real fast indeed "so fast that no human-mediated counter-response is possible." (their emphasis).

Well, I hope that helps you to sleep well at night. Is your livelihood dependent on the internet staying up? Better make some contingency plans then. Whatever though, these guys are just excellent at coming up with titles. They've got "Flash Worms" and "Stealth Worms", and even a "Warhol Worm". Still, someone has to help the spooks prepare for these kinds of attack, so the more we get of these kinds of analyses, the better prepared we'll be. Hopefully.


I like that Software Development mag. They keep coming up with nice articles. The latest one that made me say "Yup" is "Developing your code sense", over at In case you can't be bothered to click, here's the best bit:

In fact, [Dave] Thomas said, you can even resort to "rubber-ducking." "I don't know why it works, but it works. You put the rubber duck on top of your monitor. Then, when you're stuck on something, you start explaining what the code does--aloud--to the duck." And before you've finished the explanation, the solution comes to you. You smack your forehead, and politely thank the duck, he said to general laughter.

I've done that so many times - without the duck. Works for performance tuning as well as debugging. And in the absence of a duck or other friendly toy, just talk to the screen. Sure people will think you're mad. That's life.

Diary of a Hutt

May 22. Caught Weevil updating his CV. Excellent, I'm looking forward to the leaving party. I've gradually added in further classes to the server profiling, so that I'll get a full spectrum profile. I need to make some significant gains or it'll look like a waste of time.

May 28. It's going well. I'm targeting a 50% speedup. Yes, that means I'm aiming to double the speed of the server. That's an unofficial target of course. The official target will be placed somewhere below what I achieve so that I exceed the target. Placed by me that is. No one gave me a target, so its whatever I set. As long as it looks reasonable, I'll get a pat on the back and my quarterly bonus. Actually, it looks like being quite easy to get a good speedup. There's been a couple of version releases and several patches since I last did a full tune of the server, so lots of junk has crept in. Also, for some reason, the underlying system hasn't been tuned at all. I installed the performance toolkit to the application server, and also tweaked the underlying system after testing it with a tool I got off the web. The system is already running 20% faster, without any code changes.

June 6. It's not a myth. Well not any more. Did you ever hear about the enterprise system which the developers put in pauses so that they could take them out later to make the system faster? Actually, the way I hear it is that they anticipated that as the system scaled up, the load would increase and slow the system down, so they put in configurable sleep statements that slowed the system when they first deployed. Then, when it started getting loaded, they wound down the sleeps. Apparently, they kept the system running at roughly the same performance even after it went to full company-wide release. I always thought this was yet another urban myth. But now I've implemented the myth. Yes, my code tweaks way exceeded my 50% target speedup, so I added in sleep code. That way, next time I come to tune, I can either speedup the system real quick (and look so good), or take my time and doodle. Had to put the sleeps into the monitoring code so that no one else finds them, but that's good, one nice central place.

June 11. Bummer. Weevil had no intention of applying for anything outside. He moved over to QA. Even worse, it means he's going to be breathing down my neck with every patch and release. Hmm, I wonder if there is any way management would make QA a subgroup of the performance focus team?

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


Javva The Hutt.


Tips from the articles listed this month will be extracted over the coming months newsletters.

Jack Shirazi

Last Updated: 2018-02-27
Copyright © 2000-2018 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