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 |

Our valued sponsors who help make this site possible
New Relic: Try free w/ production profiling and get a free shirt! 

ManageEngine's Site24x7: End-to-End analysis on Java EE web transactions. Sign up for FREE! 

AppDynamics: Get complete browser to backend visibility. Monitor Now! 

News January 2007

Chart Java Jitter with jHiccup
Monitor and identify pauses in your Java apps. Download now

Use jKool analytics as a service
Spot patterns in time-series data - real-time and free

JProfiler
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

See Your Message Here
You could have your tool advertised here, to be seen by thousands of potential customers

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:


New Relic
New Relic: Try free w/ production profiling and get a free shirt!

ManageEngine
ManageEngine's Site24x7: End-to-End analysis on Java EE web transactions. Sign up for FREE!

AppDynamics
AppDynamics: Get complete browser to backend visibility. Monitor Now!


Chart Java Jitter with jHiccup
Monitor and identify pauses in your Java apps. Download now

Why is my application so slow?
Learn 3 ways to detect Java Application Performance Trends

JProfiler
Get rid of your performance problems and memory leaks!


Back to newsletter 074 contents

This month we are doing a Java 6 special. We're looking at all the most useful Java 6 specific performance related information around - and there is a surprisingly large amount given that the product is only a couple of months old. All the XX options are categorized, the new performance related changes and features are itemized, and we have the links to all the troubleshooting guides. Trust me, this is the special you want to bookmark for the next five years.

A note from this newsletter's sponsor

Have You Joined the Battle Against Bad Java Code?
Learn how to effectively implement performance testing in development.
Read the Quest white paper - and get a JProbe® t-shirt!

One thing that hasn't been highlighted by us so far is the dynamic attach capability. Using this, you can load in arbitrary monitoring and analysis support ON THE FLY. Hmm, that simple sentence doesn't quite emphasize the possibilities. So take this scenario: your server starts behaving oddly. You need to determine the problem without taking the server down. You generate the usual stack dumps, do some analysis, see that a couple of the stacks are doing stuff that look unusual. If only you could inspect the current data structures that are driving those threads. But now you can - you write a simple agent that uses your knowledge of the application coupled with reflection to dump that data, and you use the new dynamic attach capability to load your agent and dump the data. Does that sound good to you? Because it sounds like a dream come true for me! It may be called "dynamic attach" capability, but a more accurate way to describe it would be "dynamic do pretty much anything" capability.

Amongst the the other enhancements, two notable items are the escape analysis (the compiler automatically determines that objects can be allocated on the stack instead of the heap) and array reallocations (Arrays.copyOf and Arrays.copyOfRange). In both cases, I don't expect much performance improvements immediately - indeed that latter is just a common code fragment put into a method - but the prospect for compiler enhancements from these in the future could produce some impressive speedups for many common types of code patterns. Also worth noting is that java.lang.instrument now supports wrapping native methods - thus enabling I/O profiling at the lowest layer of the JVM, one thing that has been missing for years.

A note from this newsletter's sponsor

Wily Technology delivers what you need: Availability, Performance and Control
The most critical web applications in the world are managed by
software from Wily, the leader in enterprise application management

Finally, an XX option that caught my eye was -XX:+WizardMode. Sadly though,-XX:+WizardMode does not get the JVM doing magic tricks, nor does it make the JVM suddenly faster. It just prints reams of debugging information.

Read on for all those links and extracted tips in our Java 6 special. And first off, in keeping with the Java 6 special, we have an update to our netbeans profiler tool report which includes the latest features and upcoming ones too - see NetBeans Profiler tool report. (all our tool reports are available from here) In addition, we have our usual Javva the Hutt update and of course we have our Java 6 special links and articles, and the extracted performance related information from those java 6 links.

Java 6 special: News on speedups

A note from this newsletter's sponsor

Symantec i3 for J2EE helps you optimize application performance through
out the application life cycle. Its unique adaptive instrumentation
auto-adapts to application changes. Download an eBook on J2EE performance

Java 6 special: performance related articles (see the the extracted performance related information page)

Java 6 special: Performance related links

Java 6 special: Enhancements

Jack Shirazi


Back to newsletter 074 contents


Last Updated: 2014-10-29
Copyright © 2000-2014 Fasterj.com. All Rights Reserved.
All trademarks and registered trademarks appearing on JavaPerformanceTuning.com are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. JavaPerformanceTuning.com is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
URL: http://www.JavaPerformanceTuning.com/news/news074.shtml
RSS Feed: http://www.JavaPerformanceTuning.com/newsletters.rss
Trouble with this page? Please contact us