Optimization

Reply

Join Date: Apr 2007
Posts: 12
Reputation: rinko is an unknown quantity at this point 
Solved Threads: 0
rinko rinko is offline Offline
Newbie Poster

Optimization

 
0
  #1
Apr 26th, 2007
How can a Java program be optimized? I have no experience in this thematic so I could use some key words so I acn go deeper into it!
Thanks
Reply With Quote Quick reply to this message  
Join Date: Feb 2007
Posts: 539
Reputation: thekashyap will become famous soon enough thekashyap will become famous soon enough 
Solved Threads: 50
thekashyap's Avatar
thekashyap thekashyap is offline Offline
Posting Pro

Re: Optimization

 
0
  #2
Apr 26th, 2007
There is no specific answer to this question, so I'll give you a general one..
First find out what need to be optimized? For this you can use tools like Rational/IBM Quantify (license issues) or Mocking Framework (in this you'll need to write some code of your own).
Once you know what has to be optimized, you can ask a specific question, then we can write more specific answers.
Reply With Quote Quick reply to this message  
Join Date: Nov 2004
Posts: 6,143
Reputation: jwenting is just really nice jwenting is just really nice jwenting is just really nice jwenting is just really nice 
Solved Threads: 213
Team Colleague
jwenting's Avatar
jwenting jwenting is offline Offline
duckman

Re: Optimization

 
0
  #3
Apr 27th, 2007
a mocking framework won't tell you what needs optimising.
A profiler may, but not a mock object (if anything it will likely hide the reason for any performance problems).

Most often when people "optimise" code they are just guessing where the problems are, grasping at straws and doing things they once heard someone say would make things faster (and usually they don't of course).
As people are clearly allowed to attack me but I'm not allowed to defend myself, I no longer post to this site.
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 7,609
Reputation: ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of 
Solved Threads: 464
Super Moderator
Featured Poster
~s.o.s~'s Avatar
~s.o.s~ ~s.o.s~ is offline Offline
Failure as a human

Re: Optimization

 
0
  #4
Apr 28th, 2007
Originally Posted by jwenting View Post
Most often when people "optimise" code they are just guessing where the problems are, grasping at straws and doing things they once heard someone say would make things faster (and usually they don't of course).
Not always true -- well maybe true for beginners who think their code needs optimization for no good reason other than the thing that 'optimization' is a cool word. Take for example String and StringBuffer class in scenarios where appending is frequent. Same thing for Vector and ArrayList.

One should know where to look when it comes for optimization.
I don't accept change; I don't deserve to live.
Reply With Quote Quick reply to this message  
Join Date: Nov 2004
Posts: 6,143
Reputation: jwenting is just really nice jwenting is just really nice jwenting is just really nice jwenting is just really nice 
Solved Threads: 213
Team Colleague
jwenting's Avatar
jwenting jwenting is offline Offline
duckman

Re: Optimization

 
0
  #5
Apr 29th, 2007
I've seen highly experienced people go wrong on "optimisation" when they didn't know the underlying machine instructions being generated (and few people know those).
That was C of course, but in Java deep knowledge is often also needed to get beyond the blatantly obvious stuff.

Things like loop and callstack optimisation aren't all that well known to many people.
SQL optimisation is an especially black art...
As people are clearly allowed to attack me but I'm not allowed to defend myself, I no longer post to this site.
Reply With Quote Quick reply to this message  
Join Date: Feb 2007
Posts: 539
Reputation: thekashyap will become famous soon enough thekashyap will become famous soon enough 
Solved Threads: 50
thekashyap's Avatar
thekashyap thekashyap is offline Offline
Posting Pro

Re: Optimization

 
0
  #6
May 2nd, 2007
Originally Posted by jwenting View Post
a mocking framework won't tell you what needs optimising.
A profiler may, but not a mock object (if anything it will likely hide the reason for any performance problems).
It's just a use of mocking framework that we've found.. you can put out a trace at entry and exit every function. The trace is supposed to have particular information (time for one).. run your program with it and put down the traces in excel or run an awk/shell/perl script and you'll have your performance report.. (that's the reason I mentioned you'll have to write some code of your own)..
The reason why I suggested this in the first place is I donno how accessible Rational Quantify (or other licensed tools) are to this guy.. if they aren't one can always work around it..
Finally, no tool tells you what to optimize (not even Quantify).. they just give you a report and then just go figure..
Reply With Quote Quick reply to this message  
Join Date: Nov 2004
Posts: 6,143
Reputation: jwenting is just really nice jwenting is just really nice jwenting is just really nice jwenting is just really nice 
Solved Threads: 213
Team Colleague
jwenting's Avatar
jwenting jwenting is offline Offline
duckman

Re: Optimization

 
0
  #7
May 2nd, 2007
nice, but how are you going to trace the time needed for the functionality you replaced by those mocks (which usually is the expensive stuff like database and network operations)?
As people are clearly allowed to attack me but I'm not allowed to defend myself, I no longer post to this site.
Reply With Quote Quick reply to this message  
Join Date: Feb 2007
Posts: 539
Reputation: thekashyap will become famous soon enough thekashyap will become famous soon enough 
Solved Threads: 50
thekashyap's Avatar
thekashyap thekashyap is offline Offline
Posting Pro

Re: Optimization

 
0
  #8
May 5th, 2007
Originally Posted by jwenting View Post
nice, but how are you going to trace the time needed for the functionality you replaced by those mocks (which usually is the expensive stuff like database and network operations)?
You don't mock any objects ! Just define pointcuts for entry/exit of all classes/functions you wanna measure and add before()/after() to trace.
Will post teh code if possible.
Reply With Quote Quick reply to this message  
Join Date: Feb 2007
Posts: 539
Reputation: thekashyap will become famous soon enough thekashyap will become famous soon enough 
Solved Threads: 50
thekashyap's Avatar
thekashyap thekashyap is offline Offline
Posting Pro

Re: Optimization

 
0
  #9
May 8th, 2007
Originally Posted by thekashyap View Post
You don't mock any objects ! Just define pointcuts for entry/exit of all classes/functions you wanna measure and add before()/after() to trace.
Will post teh code if possible.
I just put Narue's sorting algorithms thru a performance test.
Here is what the output looks like when I put it in an excel sheet.
Have posted the code used in code snippets. My first Java 5.0 code.
Attached Thumbnails
Output.jpg  
Reply With Quote Quick reply to this message  
Join Date: Apr 2007
Posts: 46
Reputation: lucky1981_iway is an unknown quantity at this point 
Solved Threads: 3
lucky1981_iway's Avatar
lucky1981_iway lucky1981_iway is offline Offline
Light Poster

Re: Optimization

 
0
  #10
May 8th, 2007
Hi Kashyap,

Did you tested the functionality of AspectJ with Web Services ...? I used WSIF demo also but i'm facing various issues .If you have any documents or links pointing to this then please post it here.

Thanks
Last edited by lucky1981_iway; May 8th, 2007 at 4:44 am.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC