(1)、IBM JVM参数设置:
-Xms1024m -Xmx2048m
注意:Sun的Hotspot中的那些参数不适合用在此处。
可用的IBM JVM参数如下:
-Xlp -Xgcpolicy:optthruput -Xgcpolicy:optavgpause -Xnoclassgc -Xverify:none -Xgcpolicy:gencon -Xgcpolicy:subpool
Ø -Xlpèlarge page,前提是os要支持大页操作,可以使heap的最大值再调大
Ø -Xgcpolicy:optthruputè默认策略,使用throughput策略,适合大吞吐量的应用
Ø -Xgcpolicy:optavgpauseè使用average pause策略,适合响应时间高的应用
Ø -Xnoclassgcè不进行垃圾回收
Ø -Xverify:noneè
Ø -Xgcpolicy:genconè使用分代并发策略,基于吞吐量的改善,相当是optthruput的改进。
Ø -Xgcpolicy:subpoolè适合多处理器的分配策略,只能用于:IBM pSeries®和zSeries®平台。
Ø -Xverbosegclog:gc.logè打印GC日志
样例配置如下:
JVM_OPTS="-Xms1700m -Xmx3096m -Xminf.5 -Xmaxf.8 -Xverbosegclog:gc.log -Xverify:none -Xgcpolicy:gencon -Dibm.stream.nio=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Djava.awt.headless=true"
(2)、IBM JVM默认是运行时优化,所以启动时比较慢!如果想要启动时快,可以引入如下参数,但是不建议这样做,除非你的应用更适合启动性能优化:
-Xquickstart
(3)、OOM错误
日志如下:
JVMCL052: Cannot allocate memory in initializeHeap for heap segment
因为:初始化heap时的函数返回了一个NULL值,其实是因为C的运行时进程的heap已经满了,需要增大该heap。解决方法如下:
ulimit -d unlimited
(4)、HeapDump日志产生:
Ø 配置如下:
export IBM_HEAPDUMP=true
export IBM_HEAP_DUMP=true
export IBM_HEAPDUMP_OUTOFMEMORY=true
Ø 执行如下命令:
kill -3 <pid>
Ø 查看是否有大页操作:èalp是否非0
vmstat -l 1 3
(5)、通过ISA中提供的HeapAnalyzer工具分析HeapDump文件
如果直接通过ISA启动HeapAnalyzer工具打开比较大的dump文件,会提示本机OOM,
l 方法一、可以在本机内存可用的前提下,通过命令行自配置JVM的Xmx的值来启动分析工具,如下:
set java_home=<your_jdk>=>注意用sun jdk 1.6的版本,如果需要大内存,需要64位的
set path=%java_home%\bin;%path%;
<ISA_Administrator_Home>\applications\eclipse\plugins\com.ibm.esupport.tool.heapanalyzer_4.1.4.00>java -Xmx3608M -XX:MaxPermSize=128M -jar ha.jar <heap_dump_file_location>.phd
样例如下:
D:\Program Files (x86)\IBM\IBM Support Assistant v41\UsersAdministrator\Administrator\applications\eclipse\plugins\com.ibm.esupport.tool.heapanalyzer_4.1.4.00>java -Xmx3608M -XX:MaxPermSize=128M -jar ha.jar D:\temp\20110614\heapdump.20110613.184737.311700.0005.phd
l 方法二:可以通过在ISA平台中调整参数来解决本机打开分析工具OOM问题,分如下几步:
A、调整分析工具中的配置文件,如下:
<ISA_Administrator_Home>\applications\eclipse\plugins\com.ibm.esupport.tool.heapanalyzer_4.1.4.00>/plugin.xml=>此处可以调整-Xmx参数等
B、调整ISA平台,使其可以重新加载配置,如下:
<ISA_Administrator_Home>\.config\config.ini中
【调为restart,重启ISA,然后再改回start启动ISA。=>目的是让配置器重新加载一下分析工具的配置。
分享到:
相关推荐
5. **-verbose:**<option>: 使JVM输出详细的运行时信息到标准错误流(stderr),可选值包括: - `class`: 每次加载一个类时都输出信息。 - `dynload`: 加载动态库时输出信息。 - `gc`: 输出垃圾回收的详细信息。 -...
- **JNI弱引用**:IBM JVM支持通过JNI(Java Native Interface)创建弱引用,这类引用在内存压力较大时可能会被GC回收。 ##### 2. 堆扩展与收缩 - **堆扩展**:当堆内存不足时,IBM JVM可以自动增加堆的大小,以...
这个压缩包中的IBM JVM.pdf很可能会涵盖以上所述的各种概念、原理和实践技巧,对于想要深入了解JVM工作原理和进行性能优化的开发者来说,是一份宝贵的参考资料。通过学习这份文档,你将能够更全面地理解IBM JVM如何...
### IBM JVM Argument与Windows Java地址空间管理 在深入探讨IBM JVM参数如何影响Windows下的Java应用程序之前,我们首先需要理解在32位Windows操作系统上,Java虚拟机(JVM)是如何管理和利用有限的地址空间的。这...
### IBM Java JVM Diagnostic Guide ...通过以上内容的学习,读者不仅能够深入了解IBM JVM的内部架构,还能掌握如何有效地利用IBM提供的各种工具来诊断和解决问题,从而提高工作效率并提升应用程序性能。
IBM SDK, Java Technology Edition, Version 5.0 是一个包含了Java运行时环境(Java Runtime Environment, JRE)和Java开发工具包(Java Development Kit, JDK)的综合软件包。它为开发人员提供了创建、测试和部署...
- **JVM规范**:规定了JVM如何处理Class文件格式、运行时数据区、帧栈等。 ### JVM性能调优的核心原则与实践 #### 原则 - **理解应用需求**:深入了解应用程序的实际需求,比如响应时间、吞吐量等。 - **基准测试...
在IBM AIX操作系统中运行Java应用程序时,性能调优是确保系统高效运作的关键。本文将深入探讨Java的基础知识,AIX下的Java版本选择,以及如何利用AIX提供的工具进行性能优化。 1. Java 简介与优势 Java是一种广泛...
【WebSphere性能优化:JVM运行效率】 在WebSphere应用服务器的性能调优过程中,Java虚拟机(JVM)的优化扮演着至关重要的角色。由于Java程序中的内存管理主要是通过垃圾收集(GC)来实现,因此,理解并优化GC的行为...
1. `ha.log.0`:这可能是一个日志文件,记录了JVM运行时的详细信息,包括GC活动、内存分配、线程状态等,对分析内存问题非常有帮助。通过分析日志,我们可以找出内存使用模式,识别潜在的内存泄漏迹象。 2. `start_...
- **优化过程**:JVM会根据运行时收集到的性能指标,动态地对已编译的代码进行优化,以提升性能表现。 #### 适应性内存管理 - **HotSpot“Ergonomics”**:HotSpot JVM通过“Ergonomics”机制来自动调整堆大小、代...
首先,由于J9的高性能,蓝牙应用在处理大量数据时仍能保持流畅运行。其次,由于IBM J9支持多种平台,开发者可以编写一次代码,然后在不同类型的设备上部署,无需为每个平台单独编译。最后,JSR82的标准化接口降低了...
Java提供了一系列内置工具,方便开发者监控JVM运行状态。以下是对这些工具的详细介绍: 1. **jps(Java Process Status)** `jps`命令是Java的一个实用工具,类似于Linux的`ps`命令,用于查看当前系统中运行的Java...
Java虚拟机(JVM)是运行Java应用程序的关键组件,它负责管理内存、执行字节码以及处理线程等任务。当JVM遇到问题,如内存溢出或长时间的垃圾回收,它可能会生成堆栈转储(dump)文件,这些文件包含了JVM在特定时刻...
从调整 JVM 的观点看,有两种主要的 JVM 类型: IBM JVM 基于 Sun HotSpot 的 JVM,其中包括 Solaris 上的 Sun...缺省情况下,IBM JVM 是针对运行时性能进行优化的,而基于 HotSpot 的 JVM 是针对启动性能进行优化的。
- IBM JVM提供了强大的内存管理和性能优化功能。 - 支持多种垃圾回收策略,如CMS (Concurrent Mark Sweep) 和 G1 (Garbage First)。 **1.5 Java编译** - **解释模式**: JVM首先对字节码进行解释执行。 - **实时...
再者,javaCore日志是IBM JVM在遇到严重错误或异常时生成的,它包含了JVM崩溃时的详细状态信息。这些信息对于诊断和修复系统故障至关重要。IBM的SupportPac IY0U工具可以解析javaCore日志,为用户提供关于线程状态、...
总之,理解和掌握JVM参数优化、运行时数据区的结构以及垃圾回收机制,是每个Java开发者提高应用性能、避免内存泄漏和优化系统资源利用率的关键。通过细心的调整和不断的实践,可以打造出更加高效稳定的Java应用程序...