?
Solved

Issue with Java Application performance on iSeries

Posted on 2008-10-09
9
Medium Priority
?
432 Views
Last Modified: 2013-11-23
I have a java application that run continuously in batch on an iSeries.  The application monitors a database and creates an XML document for the data in the database.  This application is hogging the cpu.  I need some advice on what I can do so the application isn't using as much CPU.  I have run the CRTJVAPGM over all class and jar files in the application's folder, setting the optimization to 30.  What else can be done?  

Thanks  
0
Comment
Question by:DebeG
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 2
9 Comments
 
LVL 16

Expert Comment

by:Bryan Butler
ID: 22806073
There are many things that could help.  If you are sure it is the application, then I'm betting you have an I/O issue.  Are you creating these xml files in the most efficient way?  Also, if there's any logging turned on, then that's more IO.  
0
 
LVL 16

Expert Comment

by:Bryan Butler
ID: 22806076
There are also static and dynamic code analyzers that might do the trick.
0
 

Author Comment

by:DebeG
ID: 22812051
We do have logging turned on, but it is set to INFO.  The program runs multi threads.  I am not sure the issue is the application.  What about garbage collection?  When I submit the job that runs the java program, I just leave the garbage collection set to the defaults.  Would tweaking this value affect CPU usage?   Can you tell me more about static and dynamic code analyzers?

Thanks
0
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

 
LVL 16

Accepted Solution

by:
Bryan Butler earned 2000 total points
ID: 22818357
Well, I doubt garbage collection would cause the problem, but you can tweak it and maybe help some.  There is probably more than one issue, so tweak away.  If you're positive it's not I/O, which I guess you would know if you are creating a ton of logs, or something to that effect, then some analyzing sounds like the next step.  Although if you can turn all logging off, then I'd try it just to see the effect.  As far as anylyzers, the best is going to be an expert pair of eyes.  Many times they will be able to figure out what parts of code are the hogs.  Static anlyzers are not much on performance, but it couldn't hurt.  They basically look at the code and find as many issue as they can w/o running it. A dynamic anlyzer runs the software and would be the performance tool for this case.  They can check all the various things going on behind the seens and let you know where your issue is.  I worked support for a company that had a cool tool to do this.  It was called Identify and is now part of BMC.  It was only java as far as app servers, though, so it wouldn't be good in your case (or are you using app servers?).   I'll try to find some if you'd like.  A search for -  java "performance tools" analyzers OR analyze - found a Java Performance Tuning website and many others that look promising.
0
 
LVL 16

Expert Comment

by:Bryan Butler
ID: 22818376
Or an even better search for "java performance analyzers iseries" turned up a good IBM web site:

http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/rzamy/50/admin/prfref.htm
0
 

Author Comment

by:DebeG
ID: 22843277
Thanks for that info, i will look into that website.  And that is a good idea to turn off the logging to see what kind of affect that has on performance.  I will try that this afternoon too.
0
 
LVL 16

Expert Comment

by:Bryan Butler
ID: 22846257
Great. Please let us know how it goes.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java had always been an easily readable and understandable language.  Some relatively recent changes in the language seem to be changing this pretty fast, and anyone that had not seen any Java code for the last 5 years will possibly have issues unde…
In this post we will learn different types of Android Layout and some basics of an Android App.
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
Suggested Courses
Course of the Month13 days, 23 hours left to enroll

800 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question