How to troubleshoot JVM performance issues

We recently had a performance issue with our application running on Java 1.4.2 on Windows where the CPU utilization was extremely high. Using the +PrintClassHistogram option I was able to determine that a char array was utilizing more than 500 megabytes of memory.
My question is, is there another option I can include or process I can follow that would help me determine which object was creating this array?
I am not a Java programmer so I apologize if this is elementary question or if I posted this in the wrong forum. I am the SA they call when the application is not running correctly. I have been reading this forum and the manuals trying to find something that would assist me. The developers will fix the problem after I pinpoint where the problem is.
We do not have any type of JVM profiler so I am trying to troubleshoot this issue with thread dumps and JVM options. My assumption is that if a profiler can retrieve the information I should be able to. Is this a correct assumption?
Lastly, if we were to purchase a profiler does anyone have a recommendation on which one to use? Our latest version of the application utilizes Java 5 so we would need something that would work with both versions of Java if possible.
Any assistance or recommendations anyone could provide would be greatly appreciated.

unixmon wrote:
We recently had a performance issue with our application running on Java 1.4.2 on Windows where the CPU utilization was extremely high. Using the +PrintClassHistogram option I was able to determine that a char array was utilizing more than 500 megabytes of memory.
My question is, is there another option I can include or process I can follow that would help me determine which object was creating this array?
I am not a Java programmer so I apologize if this is elementary question or if I posted this in the wrong forum. I am the SA they call when the application is not running correctly. I have been reading this forum and the manuals trying to find something that would assist me. The developers will fix the problem after I pinpoint where the problem is.
This is a management problem. If you have a performance problem then you should be calling the developers and telling them to figure it out and that they need to fix it. You certainly shouldn't be looking at code or profilers.
Unless you have plenty of time on your hands and your goal is to become a developer.
But regardless...
Buying a profiler is an option but if you go that route then to figure out a solution you will be a java programmer even if that isn't your title.
You should however figure out how to simulate load on the server, even with a profiler. There are tools that allow you to send things like http requests, web service requests, etc. Simulating load is a good idea even without a profiler. It allows you to estimate future system needs dependent upon future company growth.
Note that profiling really slows down an application so an app that can handle 10 requests a second might only be able to do 1 a second or less while being profiled.

Similar Messages

  • Sun JVM Performance Issue in Sun Solaris 10 (SPARC)

    Hi,
    Issue : Performance issue after the migration of a Java application from IBM-AIX 5 to Sun Solaris 10 (SPARC)
    I am facing performance issue after the migration of a Java application from IBM-AIX 5.3 to Sun Solaris 10 (SPARC).
     Normally the application takes less than 1 hour to complete the process in AIX, but after migration in Solaris the application is taking 4+ hours.
    The Java version of IBM AIX is ,
    java version "1.5.0"
    Java(TM) 2 Runtime Environment, Standard Edition (build pap32dev-20051104)
    IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 AIX ppc-32 j9vmap3223-20051103 (JIT enabled)
    The Java version of Solaris 10 is,
    Java(TM) Platform, Standard Edition for Business (build 1.5.0_17-b04)
    Java HotSpot(TM) Server VM (build 1.5.0_17-b04, mixed mode)
    Description of Application
    The application merges 2 XML files of size 300 MB each using DOM Parser and generates flat file according to certain business logic.No remote files are using for the file generation. There are two folders and around 200 XML file in each folders of similar names. The application loads 2 similar XML file at a time from each folder and Processes. Same way, the application processes all the 200 XML file pairs using loop.
    The JVM Parameters are given below.
    /usr/java5/bin/java -cp $CLASSPATH -Xms3072m -Xmx3072M com.db.mcc.creditderiv.GCDXMLTransProc
    Here the extended swap memory in AIX is 3072 (3GB). After copying the same tode to Solaris, the
    application started throwing java.lang.OutofMemoryError. So that we have increased the swap memory up to 12 GB.
    Since 32bit Java allows maximum 4 GB extended memory we started using 64 Bit Java in Solaris using -d64 argument.
    The Current JVM Parameter in Solaris is given below.
    java -d64 -cp $CLASSPATH -Xms8192m -Xmx12288m com.db.mcc.creditderiv.GCDXMLTransProc ( 64 GB Swap Memory is available in the System)
    We have tried the following options
    1.       Extended heap size up to 12 GB using -xms and -xmx parameters and tried multiple -XX options. Earlier the application was working fine in AIX with 3.5 GB extended heap size. ( 64 GB Swap Memory is available in the System)
    2.       Downloaded and installed the Solaris SPARC Patches from the website,
         http://java.sun.com/javase/downloads/index_jdk5.jsp
    4.   Downloaded and installed XML and XSLT patch from sun website
    5.       Tried to run the Java in server mode using -server option.

    A 64 bit VM is not necessarily faster than a 32 bit one. I remember at least on suggestion that it could be slower.
    Make sure you use the -server option.
    As a guess IBM isn't necessarily a slouch when it comes to Java. It might simply be that their VM was faster. Could have used a different dom library as well.
    Could be an environment problem of course.
    Profiling the application and the machine as well might provide information.

  • How to go about performance issues

    Hi Experts,
    Need help on how to get started on below situations.
    Users are complaining about queries running slow even after rebuilding indexes,updated stats,no blocking?
    How to go about troubleshooting such issues?
    Thank you.

    http://technet.microsoft.com/en-us/library/ms177500(v=sql.105).aspx
    http://redmondmag.com/articles/2013/12/11/slow-running-sql-queries.aspx
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • How to troubleshoot sharepoint with Issues when connecting to SSIS

    I am trying to insert into a sharepoint list with SSIS and am getting an error which is to vague. I am trying to troubleshoot but just don't know enough about sharepoint. I have looked at the log files but there isn't anything there.
    There are also a tonne of options under logging configuration....how would I trouble shoot permission errors, updating/inserting errors through logs or see what messages the connections are generating?
    From SSIS side all I see is:
    [SharePoint List Destination] Error: Error on row ID="1": 0x80070005 - Unspecified Error - Check SharePoint Server Logs if possible.
    [SharePoint List Destination [131]] Error: Microsoft.Samples.SqlServer.SSIS.SharePointListAdapters.PipelineProcessException: Errors detected in this component - see SSIS Errors
       at Microsoft.Samples.SqlServer.SSIS.SharePointListAdapters.SharePointListDestination.ProcessInput(Int32 inputID, PipelineBuffer buffer)
       at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostProcessInput(IDTSManagedComponentWrapper100 wrapper, Int32 inputID, IDTSBuffer100 pDTSBuffer, IntPtr bufferWirePacket)
    [SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED.  The ProcessInput method on component "SharePoint List Destination" (131) failed with error code 0x80131500 while processing input "Component Input" (141). The identified
    component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running.  There may be error messages posted before this with more information about the
    failure.
    Any direction would be very very appreciated.

    Hi Caseypruden,
    I think you are using the SharePoint List Destination adapter downloaded from CodePlex, right? From the following links, you should be able to see permissions related error in the SharePoint Log file:
    http://sqlsrvintegrationsrv.codeplex.com/workitem/16301
    https://sqlsrvintegrationsrv.codeplex.com/discussions/279849
    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/f38d1d14-bf33-4d6d-83c4-2daf0da14697/sharepoint-list-destination-fails-on-a-job-but-manually-and-in-power-shell-runs-fine?forum=sqlintegrationservices
    If you are running the package in BIDS/SSDT, make sure the current Windows user has sufficient permission the SharePoint site to edit the SharePoint list. If you are running the package as a SQL Server Agent Job, make sure the SQL Server Agent Service Account
    or the proxy account has the corresponding permission on the SharePoint site.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • How to troubleshoot intermittent Internet Issue at a primary school

    I would change the password on your wireless and only hand it out to staff that need it or as they ask for it one by one.  That gives you a way to see what is connecting to your network and when it goes down you have a small number of staff that you know have the password.  I would be suspicious also of a AP possibly being set in a bridge mode and is causing a loop in your system.  The DNS could also be a cell phone or cellular enabled laptop/tablet that is sharing it's connection and causing a problem with your system.  

    I have been struggling for three or four weeks trying to resolve this issue. I am now of the opinion that there are two different issues here each contributing to the problem.To give you a breakdown. The school has two servers, one internet caching/filtering/proxy server, 20 computers, 45 laptops (most wired in, not wireless) and a dozen ipads.About three weeks ago I received reports that the Internet was very slow and timing out frequently. After spending some time troubleshooting the issue, I decided to shut down the children's computers (unplug from network), the wireless access points and the shared area computers. I only had one switch running as I connected everything to that switch.
    I left it for about three days - everything seemed to work. So I added the kids computers. Internet continued to work without any issues, but we...
    This topic first appeared in the Spiceworks Community

  • How to Improve performance issue when we are using BRM LDB

    HI All,
    I am facing a performanc eissue when i am retriving the data from BKPF and respective BSEG table....I see that for fiscal period there are around 60lakhs records. and to populate the data value from the table to final internal table its taking so much of time.
    when i tried to make use of the BRM LDB with the SAP Query/Quickviewer, its the same issue.
    Please suggest me how to improve the performance issue.
    Thanks in advance
    Chakradhar

    Moderator message - Please see Please Read before Posting in the Performance and Tuning Forum before posting - post locked
    Rob

  • Order Management Performance Issue

    In the Oracle Applications home page, when I login as OM Super User and for order to cash functionality, when I click on Order, Returns > Quick Sales Orders screen, it takes forever to load. When I reboot my client desktop PC machine, it loads quickly.
    Any ideas how to solve this performance issue for Order Management Quick Sales?
    We are running Oracle 12.1.1 EBS on Linux 64 bit OS platform.

    Hi,
    Please see if these documents are applicable.
    Note: 845765.1 - R12: Performance Navigating To Line Item Tab: OE_AK_SOLD_TO_ORGS_V [ID 845765.1]      
    Note: 399998.1 - OEXOEORD: Performance Entering Item On A Sales Order Line
    Regards,
    Hussein

  • Performance issue in mysap SRM

    Hi,
    We are facing the performance issue in mySAP SRM system. User when logs onto mySAP SRM and confirms a purchase order it takes a very long duration. Can you please suggest as to how to analyze the performance issue. Do we have anything similar to STAD which we use for ABAP to analyze the response time.
    Thanks in advance.
    Regards,
    Subhram

    In the note: https://service.sap.com/sap/support/notes/856803
    Execute this report BBP_GETLIST_INDEX_FILL  and activate indexes.
    Also
    Check note, https://service.sap.com/sap/support/notes/721358
    apply the index recommendations to BBPD_PD_INDEX_H, BBPD_PD_INDEX_I tables. Also updating DB stats on these parameters will improve the performance.
    Regards
    SM

  • Adobe Draw performance issues - iPad 4th gen 32gb v8.2

    I'm wondering if anyone can help me troubleshoot my performance issues with Illustrator Draw. I'll be working on a drawing and at some point things will start to lag and eventually grind to a halt. Zooming results in about 15-20 seconds of lag while it redraws, recoloring by tap-hold is similar, and drawing eventually becomes impossible.
    I'm not working with HUGE illustrations, or anything super complicated (indeed, the examples Adobe uses to showcase the product seem very complex, which is what I'd LOVE to be able to do). Usually 2-3 color, probably 4-5 layers, no transparencies. I saw the issue with Ideas from time to time, but it seems much worse with Draw. Occasionally the lag will lead to a crash, usually associated with losing everything I've done for an hour or more. Does anyone in the community (or hopefully Adobe) have any suggestions as to why this might be the case?

    This same thing happens to me as well only it's not my zoom thats the real problem, it's Draw cutting off my stroke to process and then leaping in a straight line to the end of my stroke. I think it might be the 4th gen iPads, cause you and I are running the same iPad.

  • ***  performance issue, advice plz...

    Hi Experts,
    I have a z-table1 in which I have some fileds, I have wrote the select query to fetch the data and got data too, now from this internal table I have to pass a field called SERIAL_NUM to another z-table2, to fetch the CO documents/items.
    But in the z-table2 here SERIAL_NUM field is not a key field nor it is having the index, so it is taking time in minutes even to fetch CO doc number/items for 10 serial numbers also.
    Here the z-table2 is having abt 42 lacs of records, I guess even to search the doc numbers for this 10 SERIAL_NUM it is looking each time 42 lacs records as a result it is taking time in mins.
    Sample code as follows-
    LOOP AT it_zeps06 INTO wa_zeps06.
        SELECT SINGLE
               belnr
               buzei
               billcode
               vbeln
               INTO (ws_belnr, ws_buzei, ws_billcode, ws_vbeln)
                            FROM zeps03
                            WHERE serialnum = wa_zeps06-serial_no.
    Endloop.
    Plese advice me how to overcome this performance issue? Is it works if I create index on serial_num filed in z-table2? Or is there any other way?
    Appreciate you response.
    Regards.
    DC

    Hi,
    The first issue is that you are looping over a select statement.  What you could do is create another internal table with same fields as the select statement above and then use the table it_zeps06 with FOR ALL ENTRIES options and collect the serial numbers.
    This should take much less time than the others. Since you are looping over a select statement, the trip from AServer to DBServer is expensive.
    Thanks...
    Preethanm S

  • Avoiding performance issue due to loop within loop on internal tables

    Hi Experts,
                    I have a requirement where in i want to check whether each of the programs stored in one internal table are called from any of the programs stored in another internal table. In this case i am looping on two internal tables (Loop within a loop) which is causing a major performance issue. Program is running very very slow.
    Can any one advise how to resolve this performance issue so that program runs faster.
    Thanks in advance.
    Regards,
    Chetan.

    Forget the parallel cursur stuff, it is much to complicated for general usage and helps nearly nothing. I will publish a blog in the next days where this is shown in detail.
    Loop on loop is no problem if the inner table is a hashed or sorted table.
    If it must be a standard table, then you must make a bit more effort and faciliate a binary search (read binary search / loop from index exit)
    see here the exact coding Measurements on internal tables: Reads and Loops:
    /people/siegfried.boes/blog/2007/09/12/runtimes-of-reads-and-loops-on-internal-tables
    And don't forget, the other table must not be sorted, the loop reaches anyway every line. The parallel cursor requires both tables to be sorted. The additional sort
    consumes nearly the whole advantage of the parallel cursor compared to the simple but good loop in loop solutions.
    Siegfried

  • How do I correct universe performance issue?

    We are trying to complete an upgrade from BO XIr2 to 3.1 SP3.  We have one universe (out of about 30) that is having serious performance issues in 3.1.  The universe is slow to import (takes less than 5 min in XI r2 and more than 20 min in 3.1) and reports using it take about 5 times longer to run in 3.1 than in XI r2.  I have already worked a ticket with support.  All they provided was an adapt about Webi reports running slower in 3.1 than in XI that's supposed to be fixed with FixPack 3.6.  This is rather vague and doesn't really help us get through a production upgrade that's scheduled for May.  I've already checked all the unvierse settings and Webi report server settings to verify that the options that do exist in both XI and 3.1 are the same.  Both versions of the universe are pointed to the same Oracle data source.  I've worked with our DBAs to troubleshoot.  The behavior on the database side is different in 3.1 than in XI but I don't know how to tweak it.  When a report is run in XI, the database sessions run in parallel.  When the same report is run in 3.1, the sessions are serial first and eventually go to parallel but are still considerably slower to run the exact same SQL.  Any suggestions would be greatly appreciated.  Thanks!

    Hi,
       Are you referring to ADAPT01453709?
       From what I have gathered, this is an known issue and had since been escalated to the SAP developer. There were several releases already been made. The earliest official release to public will be on FP 3.6, (ETA Jun 2011).
       You may want to check with the engineer that worked on your current incident to understand exactly what is fixed/addressed in FP 3.6. I suspect the fixes is on the symantic layer, not something you can easliy check via D/B and running some SQL script.
    Regards,
    Ken

  • How should I report forum performance issues?

    The forums rely heavily on the caching features of browsers to improve the speed of page rendering. Performance of these forums should greatly improve after a few pages because more and more of the images, css and javascript is cached in the browser. As a consequence, when reporting forums performance issues the report should include some information on the state of the browser cache to determine whether the issue is a browser issue or a server issue. Such detailed information is generally not available from just watching the browser screen, but needs to come from specialized tools such as performance monitor plugins and recording proxies.
    The preferred report method for performance issues is to use the speed reporting features build into or available as a plugin for a browser for both the page you want to report a problem with and several refence pages in the site. Detailed instructions are listed below separated out for different browsers. If possible, please use Firefox for submitting the report because it provides an export format that can be read back electronically.
    Known performance issues
    The performance issues with any screen with a Rich Text Editor, such as the Reply window and the compose Private Message window have been acknowleged and improvements are being implemented.
    Mozilla Firefox (preferred)
    Warning: it is currently not recommended to generate a speed report when logged in. The speed report has enough detail for somebody else to hijack your session and impersonate you on the forums. If you really must report while logged in, make sure you log out your browser after generating the speed report and wait at least 4 hours before posting.
    Install the Firebug plugin
    Install the NetExport 0.6 extension for Firebug
    Enable all Firebug panels
    Switch to the "Net" panel in Firebug
    Click on this link
    Export the data from the Firebug Net panel
    Click on this link
    Export the data from the Firebug Net panel
    Browse to the page where you are experiencing the performance problem.
    Export the data from the Firebug Net panel
    Click on this link
    Export the data from the Firebug Net panel
    Click on this link
    Export the data from the Firebug Net panel
    Browse to the page where you are experiencing the performance problem.
    Export the data from the Firebug Net panel
    When you report a performance problem please attach the 6 exports from the Firebug Net panel and an explanation of how you are experiencing the issues (for instance how much slower it is then normal) and include a description of your internet connection (dial-up, dsl, cable etc.) and the country from where you are connecting. If you have non-standard tweaks to your Firefox configuration (such as pipelining enabled) or are running any plugins please include that information in your report as well.
    Google Chrome
    Open the Developer Tools (Ctrl-Shift-J)
    Navigate to the resources tab
    Enable resource tracking.
    Click on this link
    Export the resource loading data.
    Reset the data by disabling and enabling resource tracking
    Click on this link
    Export the data
    Reset the data by disabling and enabling resource tracking
    Navigate to the page where you experience the performance problem
    Export the data
    Reset the data by disabling and enabling resource tracking
    Click on this link
    Export the data
    Reset the data by disabling and enabling resource tracking
    Click on this link
    Export the data
    Reset the data by disabling and enabling resource tracking
    Navigate to the page where you experience the performance problem
    Export the data
    Since Google Chrome does not have an export format for the Resource Tracking information best current practice is to take a screenshot and note the hover details for any resource with a tail that is longer then 25% of the total load time. When you report a performance problem please attach the screenshots and an explanation of how you are experiencing the issues (for instance how much slower it is then normal)  and include a description of your internet connection (dial-up, dsl, cable etc.) and the country from where you are connecting.
    Apple Safari
    The Apple Safari Web Inspector has a Resources panel similar to the Resources panel in the Google Chrome developer tools.To get there, follow these steps:
    Show the menu bar.
    Go to preferences
    Go to the Advanced Tab
    Check “Show  Develop menu in menu bar”.
    From the Develop menu select “Show Web  Inspector”. 
    Collecting the performance information and exporting works exactly the same as in Google Chrome. Please refer to the instructions for Google Chrome.
    Microsoft Internet Explorer
    IE does not have native features to analyze web traffic. No plugins have been found that produce the required information (please let us know if we missed any). For now, please reproduce the issue with Firefox, Chrome or Safari.
    Please note that due to the reliance on Javascript for the interactive effects the performance of these forums will be much better on MS IE 8 then on previous versions of MS IE.

    Hi
    It works, check once again...
    regards
    Swami

  • I am running on OSX 10.10.1 and have a 2009 imac intel and I am having severe latency issues.  I am not familiar with macs as this is my home computer used by other family members.  Any help on how to troubleshoot why such latency issues?

    I am running on OSX 10.10.1 and have a 2009 imac intel and I am having severe latency issues.  I am not familiar with macs as this is my home computer used by other family members.  Any help on how to troubleshoot why such latency issues?

    When you see a beachball cursor or the slowness is especially bad, note the exact time: hour, minute, second.  
    These instructions must be carried out as an administrator. If you have only one user account, you are the administrator.
    Launch the Console application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad and start typing the name.
    The title of the Console window should be All Messages. If it isn't, select
              SYSTEM LOG QUERIES ▹ All Messages
    from the log list on the left. If you don't see that list, select
              View ▹ Show Log List
    from the menu bar at the top of the screen.
    Each message in the log begins with the date and time when it was entered. Scroll back to the time you noted above.
    Select the messages entered from then until the end of the episode, or until they start to repeat, whichever comes first.
    Copy the messages to the Clipboard by pressing the key combination command-C. Paste into a reply to this message by pressing command-V.
    The log contains a vast amount of information, almost all of it useless for solving any particular problem. When posting a log extract, be selective. A few dozen lines are almost always more than enough.
    Please don't indiscriminately dump thousands of lines from the log into this discussion.
    Please don't post screenshots of log messages—post the text.
    Some private information, such as your name, may appear in the log. Anonymize before posting.

  • How to restrict logging on portal (Performance issue)

    Hi guys,
    does anyone know how to restrict logging of the portal? Even though I made a change on Visual Administrator -> Services -> Log Configurator setting ALL categories to severity = 'Error', I keep getting 'Info' severity traces logged in defaultTrace.trc (viewed by Logg Viewer). Which in practise means tons of logged trace information! I think this might be one of the reasons we have been experiencing performance issues lately.
    Does anyone know how to restrict this logging?
    Any help greatly appreciated!
    Cheers,
    Frank

    Hi,
    I would not only set the severity of categories to 'Error' but also locations to 'Error'.
    A log controller - can be a "category" or a "location".     Categories are used for "logging" and represent problem areas such as network, database, security, user interface, etc. Identified by a slash-separated ('/') path of names, prefixed with an additional slash.     Locations are used for "tracing" and correspond to places in the development components. Identified by a dot-separated ('.') path of names, which is often the name of the respective java package.
    Greetings,
    Praveen Gudapati

Maybe you are looking for

  • How have people fixed cd burning prob in itunes 8.2?

    Hi there Ive read all the posts about CD burning in itunes 8.1 and 8.2. CD's wont burn and itunes just hangs until I force quit. Anyone ayone suggestions? Is there another way to burn a CD with itunes music, like a software download. Tracy

  • After Upgrading iTunes ...

    from 12.0.1.26 to 12.1.1.4 My iPhone(s) 4s do nor appears as Icon (see picture). therefore I can't sync. I'm using WIN 8.1. With 12.0.1.26 there was NO problem. Anny suggestions, Idea's ans finally a worling solution??? Daniel

  • SD-FI interface table(s)

    Dear CRM experts, I seek your kind advise on the following matter: On billing we wish to update the FI with an information from the SD as the 'assignment'. In the ECC we had done through a sort key and neceeeary entering of the "field's" value in the

  • Adding a watermark  to raster maps before  MapView displays users requests

    Dear everyone Is it possible to create a transparent watermark overlay that Oracle can then place on top of any raster maps just before they are served via MapViewer to web browsers. I have some large raster maps which users will be able pan and zoom

  • App store country problem, my country is not on list so I can't use app store

    Hello everyone, I am from Serbia and I have problem with App store, I use iMac and when I try to download something from App Store it asks me for country my country is not on list. Please Help