【技术实现步骤摘要】
用于JNI调用的GC安全点的选择性注入
[0001]本专利技术总体上涉及计算系统,并且更具体地,涉及用于Java本地接口(JNI)调用的垃圾回收(GC)安全点的选择性注入。
技术介绍
[0002]当需要垃圾回收(GC)时,mutator线程在GC安全点处被挂起并等待GC结束。Java虚拟机(JVM)在Java代码中的适当位置处插入GC安全点。在调用本地方法之前和之后是GC安全点。在中,mutator线程的状态在GC安全点之前和之后被改变。为了正确地识别状态,在安全点出需要全存储器栅栏(memory fence)。在中,即使当本地方法正在运行时,也可以执行GC。在高GC频率下,越多GC安全点被插入,应用运行得越快。
[0003]然而,当频繁执行本地方法时,这些本地方法由于在GC安全点处的全存储器栅栏而降级。结果,应用程序的总性能也会降低。
技术实现思路
[0004]根据本专利技术的方面,提供了一种用于管理垃圾回收(GC)安全点的计算机实现的方法。该方法包括:通过检查在执行目标本地方法之前的堆占用率,确定 ...
【技术保护点】
【技术特征摘要】
1.一种用于管理垃圾回收(GC)安全点的计算机实现的方法,包括:通过检查在执行目标本地方法之前的堆占用率,确定是否可移除用于所述目标本地方法的GC安全点;响应于在执行所述目标本地方法之前的所述堆占用率小于阈值占用量百分比,移除所述GC安全点;通过检查最新的GC暂停时间,确定是否可移除用于所述目标本地方法的所述GC安全点;以及响应于所述最新的GC暂停时间比所述目标本地方法的执行时间短阈值暂停时间量百分比,移除所述GC安全点。2.根据权利要求1所述的计算机实现的方法,其中,所述阈值占用量百分比在虚拟机启动时经由虚拟机参数可修改。3.根据权利要求1所述的计算机实现的方法,其中,所述阈值暂停时间量百分比在虚拟机启动时经由虚拟机参数可修改。4.根据权利要求1所述的计算机实现的方法,还包括:在虚拟机启动时,经由相应的虚拟机参数来设置所述阈值占用量和所述阈值暂停时间量。5.根据权利要求1所述的计算机实现的方法,其中,所述阈值占用量被设置为百分之七十。6.根据权利要求1所述的计算机实现的方法,其中,所述阈值暂停时间量被设置为百分之十。7.根据权利要求1所述的计算机实现的方法,还包括:在所述目标本地方法被初始调用时,由所述虚拟机记录所述目标本地方法的经过时间,以及针...
【专利技术属性】
技术研发人员:伦大堀江,绪方一则,堀井洋,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。