The Artima Developer Community
Sponsored Link

Java Buzz Forum
Monday Afternoon Sessions

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Sam Dalton

Posts: 143
Nickname: samd
Registered: Jun, 2003

Sam Dalton is a Java Developer with ThoughtWorks in teh UK
Monday Afternoon Sessions Posted: Jun 29, 2004 11:49 AM
Reply to this message Reply

This post originated from an RSS feed registered with Java Buzz by Sam Dalton.
Original Post: Monday Afternoon Sessions
Feed Title: import java.*;
Feed URL: http://www.samjdalton.com/pebble/rss.xml
Feed Description: Random, Infrequent Bloggings of a Techie
Latest Java Buzz Posts
Latest Java Buzz Posts by Sam Dalton
Latest Posts From import java.*;

Advertisement

Attended 2 session yesterday afternoon, both related to performance. The first session was about Tuning the VM for maximum performance. Not a bad session, but didn't tell me much I didn't know. I think it could have done with a bit more of the reasons why certain tunigs work, and the reaqsons other don't. Looks like J2SE 5.0 has a feature called Smart Tuning which should mean a lot of the tweaking of command line parameters goes away.

The second session concerned minimizing application startup time. Not a bad session all in all, a lot of common sense, but it is always good to see the stuff written down. The session used examples from the J2SE 1.5 and the NetBeans product. The take home messages from the session were:

  • Profile before trying to optimize, then optimize, then re-profile. Do this often through your development cycle.
  • Lazier Initialisation is good. Don't initialise things up front that can be done later on. This can, however, result in a trade-off between startup time and application responsivness as things are initialised later. This made me think of the some potential problems with the Constructor Based IoC pattern and its desire for everything to be resolved and initialised up front. I will post more about this when I have distilled my thoughts a bit more.
  • Cache expensive computation. J2SE 5.0 includes something called Class Data Sharing where class data is shared between running VMs on the same machine, thus resulting in a faster startup time after the first VM, as well as decreased VM footprint. You should however beware of redundant caching, and also try to keep your caches centralised.
  • Sometimes fundamental algorithmic changes are necessary to improve performance. An example of this is moving to an event based parsing schemes from a DOM parsing scheme.

All in all not a bad afternoon, but I think I have had my fill of performance related sessions for this week!

Read: Monday Afternoon Sessions

Topic: Jakarta Struts De-Mystified Part 1 Previous Topic   Next Topic Topic: FireFox 0.9 - First Impressions

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use