The Memory Analyzer is an Open Source Project at Eclipse (http://www.eclipse.org/mat/) licensed under the Eclipse Public License. Check out our blog, the WIKI and the forum. If you find a bug, please file it against Bugzilla.
While the open source version contains all the core features, the SAP Netweaver Extensions provide names for NetWeaver deployment units and information about caches, sessions, etc. The extensions are helpful if you analyze heap dumps from NetWeaver Java Server systems.
SAP Memory Analyzer is a fast and feature-rich heap analyzer that helps you easily find big chunks of memory and identify who is keeping these objects alive.
The Memory Analyzer was developed to analyze productive heap dumps with hundreds of millions of objects. Once the heap dump is parsed, you can re-open it instantly, immediately get the retained size of single objects and quickly approximate the retained size of a set of objects. The Analyzer is (relatively) low on resource consumption, so you can analyze multi-GB heap dumps on 32 bit boxes.
Read what our users have to say!
SAP Memory Analyzer supports by default HPROF binary heap dumps, a de-facto standard of Sun supported also by other vendors:
Sun, SAP and HP JDK/JVM from version 1.4.2_12 and 5.0_7 and 6.0 upwards
Memory Analyzer can also read memory-related information from IBM system dumps. For the purpose one has to install the IBM DTFJ adapter into the Memory Analyzer. Minimum-required versions are:
IBM JDK 1.4.2 SR12, 5.0 SR8a and 6.0 SR2. Read more here.
The Memory Analyzer is based on Eclipse 3.3 and needs a 1.5 JDK. You can either download the standalone application or unzip the plug-ins to your Eclipse installation. The former is available for all platforms that SWT is available. We greatly appreciate your feedback regarding platforms other than Windows as our scarce resources let us primarily target Windows.
Please see here for details.
Are you running an AS Java Weekstone with SAP JVM...
...or a plain Java Application?
All options to get an HPROF dump in detail...
via Java VM parameters (see ConfigTool on how to set those for AS Java installations):
via tools:
Heap dump will be written to the working directory.
Vendor / Release | VM Parameter |
|
| Sun Tools |
| SAP Tool |
| On out of memory | On Ctrl+Break | Agent | JMap | JConsole | JVMMon |
Sun, HP |
|
|
|
|
|
|
Yes | Yes | Yes |
|
|
| |
Yes | Yes (Since | Yes | Yes (Only Solaris and Linux) |
|
| |
Yes |
| Yes | Yes | Yes (Not working with AS Java) |
| |
SAP |
|
|
|
|
|
|
Any | Yes | Yes | Yes | Yes (Only Solaris and Linux) |
| Yes |
If you run into problems opening a heap dump with the SAP Memory Analyzer (Error message: "Unrecognized heap dump sub-record type"), please let us know. This indicates a corrupt heap dump file. In this case we would like to learn which tool/approach you have chosen to dump the heap.
Heap dumps are not written on OutOfMemoryError for the following reasons:
As for the C heap, the best way to see that you won't get a heap dump is if it happens in C code (eArray.cpp in the example below):
# An unexpected error has been detected by SAP Java Virtual Machine: # java.lang.OutOfMemoryError: requested 2048000 bytes for eArray.cpp:80: GrET*. Out of swap space or heap resource limit exceeded (check with limits or ulimit)? # Internal Error (\\...\hotspot\src\share\vm\memory\allocation.inline.hpp, 26), pid=6000, tid=468
C heap problems may arise for different reasons, e.g. out of swap space situations, process limits exhaustion or just address space limitations, e.g. heavy fragmentation or just the depletion of it on machines with limited address space like 32 bit machines. The hs_err-file will help you with more information on this type of error. Java heap dumps wouldn't be of any help, anyways.
Also please note that a heap dump is written only on the first OutOfMemoryError. If the application chooses to catch it and continues to run, the next OutOfMemoryError will never cause a heap dump to be written!
How to get an IBM system dump to be analyzed with Memory Analyzer + DTFJ Adapter depends on the concrete IBM system / JVM. The following resources should provide the necessary description:
Source From:wiki.sdn.sap.com/wiki/display/Java/Java+Memory+Analysis
本日志由 flyinweb 于 2010-01-18 11:47:22 发表,目前已经被浏览 773 次,评论 0 次;
作者添加了以下标签: Memory Analyzer,MAT;
引用通告:http://www.517sou.net/Article/398/Trackback.ashx
To: jconsole不能打开,大概两种可能: 1 没有启用独占模式,如O
两个实例分别放在不同的 datadir 里面,会方便很多
今天遇到了“Cleanup failed to process the following paths:-
谢谢分享.有帮助.
根据inotify + rsync的思路,现在有了个c++版本的同步程序,只需指
真是有耐心呀。我做了个pdf 文件 在上面的网站可以下载