[发明专利]动态优化字节编码程序的方法和装置无效
申请号: | 98118294.1 | 申请日: | 1998-10-06 |
公开(公告)号: | CN1234551A | 公开(公告)日: | 1999-11-10 |
发明(设计)人: | U·赫尔茨勒;R·格雷瑟梅尔;D·格里斯沃尔德 | 申请(专利权)人: | 太阳微系统有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 王勇,王忠忠 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态 优化 字节 编码 程序 方法 装置 | ||
1.一个在运行期间处理计算机程序的计算机实现的过程,其中程序包含字节代码,该计算机实现的过程包括:
调用一个从多个子程序中选定的子程序,其中,调用该选定子程序包括解释该选定子程序;
更新一个被安排去跟踪该选定子程序的调用的调用跟踪器;
判定调用跟踪器何时指示选定子程序的调用次数超过某个阈值;
当判定调用跟踪器指示选定子程序的调用次数超过该阈值时,编译该选定子程序。
2.权利要求1所述的计算机实现的过程,进一步包括检测编译该选定子程序相关的编译开销。
3.权利要求2所述的计算机实现的过程,进一步包括:
判定编译开销何时处于某个可接受的范围内;
当判定编译开销不在可接受的范围内时,就调整该阈值。
4.权利要求2和3中之一所述的计算机实现的过程,其中,检测编译开销包括计算编译开销的一个滑动平均数。
5.权利要求2~4所述的计算机实现的过程,进一步包括检测解释选定子程序相关的解释开销。
6.权利要求5所述的计算机实现的过程,进一步包括:
判定解释开销何时处于某个可接受的范围内;
当判定解释开销不在该可接受的范围内时,就调整该阈值。
7.上述中各权利要求中任一个权利要求所述的计算机实现的过程,其中,调整该阈值包括增大该阈值和减小该阈值。
8.上述中各权利要求中任一个权利要求所述的计算机实现的过程,其中,更新调用跟踪器包括递增在选定子程序中设置的一个计数器。
9.上述中各权利要求中任一个权利要求所述的计算机实现的过程,进一步包括:
调用该编译的选定子程序;
更新一个用来记录该编译的选定子程序的调用次数的跟踪机构;
判断跟踪机构何时指示该编译的选定子程序的调用次数超过了某界限值;
如果判定该跟踪机构指示该编译的选定子程序的调用次数超过了该界限值,重新编译该编译的选定子程序。
10.一种用于执行计算机程序的计算机实现的过程,其中计算机程序包括多个子程序,这多个子程序包括优化状态不同的选定子程序,该计算机实现的过程包括:
在计算机程序的执行期间从多个子程序中选择一个子程序,其中该子程序处于第一种优化状态;
在计算机程序的执行期间将该子程序从第一种优化状态转换到第二种优化状态,其中该第二种优化状态比第一种优化状态更优化,将该第一子程序从第一种优化状态到第二种优化状态的转换包括平衡转换该子程序的代价与转换该子程序的好处。
11.权利要求11所述的计算机实现的过程,进一步包括执行该子程序,其中执行第一种优化状态下的该子程序比执行第二种优化状态下的该第一子程序慢。
12.权利要求10和11中之一所述的计算机实现的过程,其中第一种优化状态,是从由一个解释状态和一个编译状态组成的状态组中选择的一种状态。
13.权利要求10~12中任意一项权利要求所述的计算机实现的过程,其中,从多个子程序中选择该子程序包括在该计算机程序的执行期间检测该第一子程序的调用次数。
14.一种计算机实现的执行计算机程序的方法,其中计算机程序包含多个子程序,该计算机实现的方法包括:
调用从多个子程序中选定的某第一子程序;
判断该第一所选子程序何时要被某编译程序处理,其中,判断该第一所选子程序何时要被该编译程序处理根据的是与该第一所选子程序的调用相关的一个阈值;
如果判定该第一子程序要被该编译程序处理,则用该编译程序处理该第一子程序;
如果判定该第一子程序要被该编译程序处理,调整与该计算机程序关联的某种开销的一个量度;
判断该种开销的量度是否表示该种开销是可以接受的;
如果判定该种开销是不可接受的,调整该阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于太阳微系统有限公司,未经太阳微系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/98118294.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于一圆形外壳的冷却或加热装置
- 下一篇:电压控制振荡器的控制