• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 15
    • 下载费用:30 金币  

    重庆时时彩报警器: 即时编译器中一种基于云的热路径优化方法.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN201410033804.1

    申请日:

    2014.01.24

    公开号:

    CN103793502A

    公开日:

    2014.05.14

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20140124|||公开
    IPC分类号: G06F17/30 主分类号: G06F17/30
    申请人: 北京航空航天大学
    发明人: 范礼阳; 史晓华; 赵胜男; 杨海燕
    地址: 100191 北京市海淀区学院路37号
    优先权:
    专利代理机构: 北京永创新实专利事务所 11121 代理人: 祗志洁
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201410033804.1

    授权公告号:

    ||||||

    法律状态公告日:

    2017.01.18|||2014.06.11|||2014.05.14

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    本发明提供了即时编译器中一种基于云的热路径优化方法,当本地程序空闲时,将本地即时编译队列新生成的热路径上传到云端,热路径在上传时进行数据格式整理,将具有相同程序标识符的热路径整理为一个数据上传;在云端可获得同一程序多个上传数据,然后再进行统计整理,使得相同程序的热路径存储在一个数据中。当本地新启动程序或者程序空闲时,从云端下载对应程序的热路径并加入到虚拟机的即时编译队列中。本发明将各终端本地程序运行获取的“热路径”上传到云端进行整合统计,得到该程序运行时全面的“热路径”统计数据;并在用户程序空闲时,通过下载有效的云端数据来使程序中的“热路径”提前编译,从而提升了运行效率。

    权利要求书

    权利要求书
    1.  即时编译器中一种基于云的热路径优化方法,其特征在于,针对某一程序,进行如下步骤:
    步骤1:当程序空闲时,判断本地即使编译器中的热路径是否有更新,若有,执行步骤二,否则,执行步骤三;
    所述的本地即使编译器中的热路径存储为Jit-Trace格式的数据结构,该数据结构包括一个字节码方法和包含该字节码方法的执行路径;
    步骤2:将本地Jit-Trace格式数据转换为Native-Jit-Traces格式数据;
    所述的Native-Jit-Traces格式数据包括数据头和路径数据两部分;数据头包含程序标识符和版本号Cloud-Jit,程序标识符包括程序的包名、签名和版本号;路径数据部分以<字节码方法,执行路径数组>的键值对方式组织,执行路径数组中包含对应字节码方法的Jit-Trace格式中的各执行路径,一个键值对对应一个热路径;
    步骤3:将位于本地的Native-Jit-Traces格式数据上传到云端,云端对具有相同程序标识符的所有Native-Jit-Traces格式数据进行统计整理,生成Cloud-Jit-Traces格式数据,并存储在云端资源池中;
    所述的Cloud-Jit-Traces格式数据包括程序标识符,版本号Cloud-Jit,以及路径数据,路径数据以<字节码方法,执行路径数组,统计数据>的键值对方式组织,其中,统计数据为相应字节码方法的统计次数,一个键值对对应一个热路径;
    步骤4:在本地程序初始化或者本地程序空闲时,从云端下载对应程序的经过统计处理的Cloud-Jit-Traces格式数据,并将热路径加入到虚拟机的即时编译队列中。

    2.  根据权利要求1所述的即时编译器中一种基于云的热路径优化方法,其特征在于,步骤1中所述的Jit-Trace格式的数据结构,其包含的字节码方法中存储了所属类索引、方法ID、入口地址及参数信息,其包含的每条执行路径存储了路径的入口点、出口点、字节码指令数及代码标识。

    3.  根据权利要求1所述的即时编译器中一种基于云的热路径优化方法,其特征在于,步骤3所述的生成Cloud-Jit-Traces格式数据时,对于一个Native-Jit-Traces格式数据NT,首先在云端资源池中查找是否存在与NT具有相同程序标识符的Cloud-Jit-Traces格式数据,若存在执行(1),否则执行(2);当程序的Cloud-Jit-Traces格式数据被新创建或者被更新过后,将Cloud-Jit-Traces格式数据的Cloud-Jit版本号进行更新;
    (1)设找到与NT具有相同程序标识符的Cloud-Jit-Traces格式数据CT,对NT中的每个键值对<字节码方法,执行路径数组>,在CT中查找是否存在具有相同字节码方法和执行路径数组的键值对,若存在,则更新CT中对应键值对中的统计数据,否则,在CT中生成对 应的键值对<字节码方法,执行路径数组,1>;
    (2)创建一个Cloud-Jit-Traces格式数据CT,设置CT的程序标识符与NT的程序标识符相同,对NT中的每个<字节码方法,执行路径数组>键值对,对应在CT中生成键值对<字节码方法,执行路径数组,统计数据>,初始各键值对的统计数据均为1。

    4.  根据权利要求1所述的即时编译器中一种基于云的热路径优化方法,其特征在于,所述的步骤4,设从云端下载程序对应的Cloud-Jit-Traces格式数据CT,首先检测本地是否存在与CT相同Cloud-Jit版本号的Native-Jit-Traces格式数据,若存在,则不进行下载;若不存在,则下载CT,并创建一个Native-Jit-Traces格式数据NT,设置NT的程序标识符与CT的程序标识符相同,并依据CT中每个<字节码方法,执行路径数组,统计数据>键值对,对应生成NT中的每个<字节码方法,执行路径数组>键值对,设置NT的Cloud-Jit版本号为CT的Cloud-Jit的版本号。

    说明书

    说明书即时编译器中一种基于云的热路径优化方法
    技术领域
    本发明涉及即时编译器和热路径技术,具体是即时编译器中一种基于云的热路径优化方法。
    背景技术
    即时编译器(Just-In-Time Compiler,JIT编译器)是一种广泛应用于Java虚拟机、Dalvik虚拟机(运行Android程序的虚拟机)以及其他语言虚拟机中的编译系统。即时编译器与传统编译系统的差别在于,它并不预先将被执行程序编译为目标代码,而是在程序运行时,将那些需要被执行的代码即时的编译成目标代码,再予以执行。
    由于即时编译器是在程序运行时进行编译,因此编译器本身消耗的运行时间和空间都有所限制,这也使得即时编译器中的各种优化方法倾向于采用轻量级的、较快的算法,同时,针对即时编译器的运行特征,扑捉并针对程序运行的“热路径(JIT-Trace)”进行编译,是一种重要的兼顾优化效果和优化开销的折中机制。
    以Dalvik虚拟机为例,如图1所示,它在启动初始化时,开始解释执行字节码,当解释程序的某段代码被调用时,字节码解释程序会记录被标记的代码执行的次数(profile count),并检测是否达到编译阀值,如果达到编译的条件,则说明该段代码为一“热路径”,切换到JIT编译器模式查找相对应的Trace入口,若不存在对应的Trace,则解释或创建Trace建立请求并提交编译请求,启动编译器线程对热路径进行编译;若存在对应的Trace,则查看是否已被编译,若未被编译,则构建编译单元,生成中间代码,在JIT-Code中对热路径进行编译。解释直到读取下一个Trace记录的头部head为止。热路径被编译后,执行编译后的机器码。与解释器模式相比,JIT编译器生成后的代码运行速度更快,字节码执行效率更好;但同时JIT编译本身也会占用较多的时间和空间资源,造成Android程序运行“卡壳”的现象;热路径的统计和计算本身也会占用大量资源;另外,JIT也存在相关的平台相关性,开发维护成本较高等问题。
    发明内容
    本发明针对现有热路径在即时编译器中存在的占用资源量大,开发维护成本高等问题,提出了即时编译器中一种基于云的热路径优化方法。
    本发明的即时编译器中一种基于云的热路径优化方法,针对某一程序,进行如下步骤:
    步骤一、当程序空闲时,判断本地即使编译器中的热路径是否有更新,若有,则执行步骤二,否则,转步骤三执行;所述的本地即使编译器中的热路径存储为Jit-Trace格式的数据 结构,该数据结构包括一个字节码方法和包含该字节码方法的执行路径。
    步骤二、将本地Jit-Trace格式数据转换为Native-Jit-Traces格式数据,准备进行云端上传;所述的Native-Jit-Traces格式数据包括数据头和路径数据两部分;数据头包含程序标识符和版本号Cloud-Jit,程序标识符包括程序的包名、签名和版本号,版本号Cloud-Jit用于标识程序的热路径信息版本;路径数据部分以<字节码方法,执行路径数组>的键值对方式组织,执行路径数组中包含对应字节码方法的Jit-Trace格式中的各执行路径,一个键值对为一个热路径。
    步骤三、将位于本地的Native-Jit-Traces格式数据上传到云端,云端对具有相同程序标识符的所有Native-Jit-Traces格式数据进行统计整理,生成Cloud-Jit-Traces格式数据,并存储在云端资源池中;
    所述的Cloud-Jit-Traces格式数据包括程序的标识符,版本号Cloud-Jit,以及路径数据,路径数据以<字节码方法,执行路径数组,统计数据>的键值对方式组织,其中,统计数据为相应字节码方法的统计次数。一个键值对对应一个热路径。
    步骤四、在本地程序初始化或者本地程序空闲时,从云端下载对应程序的经过统计处理的Cloud-Jit-Traces格式数据,并将热路径加入到虚拟机的即时编译队列中。
    所述的步骤一中的Jit-Trace格式的数据结构,其包含的字节码方法中存储了所属类索引、方法ID、入口地址及参数信息,其包含的每条执行路径存储了路径的入口点、出口点、字节码指令数及代码标识。
    所述的步骤三中生成Cloud-Jit-Traces格式数据时,对于一个Native-Jit-Traces格式数据NT,首先在云端资源池中查找是否存在与NT具有相同程序标识符的Cloud-Jit-Traces格式数据,若存在执行(1),否则执行(2);当程序的Cloud-Jit-Traces格式数据被新创建或者被更新过后,将Cloud-Jit-Traces格式数据的Cloud-Jit版本号进行更新;
    (1)设找到与NT具有相同程序标识符的Cloud-Jit-Traces格式数据CT,对NT中的每个键值对<字节码方法,执行路径数组>,在CT中查找是否具有相同字节码方法和执行路径数组的键值对,若存在,则更新CT中对应键值对中的统计数据,否则,在CT中生成对应的键值对<字节码方法,执行路径数组,1>;
    (2)创建一个Cloud-Jit-Traces格式数据CT,设置CT的程序标识符与NT的程序标识符相同,对NT中的每个<字节码方法,执行路径数组>键值对,对应在CT中生成键值对<字节码方法,执行路径数组,统计数据>,初始各键值对的统计数据均为1。
    所述的步骤四中,设从云端下载程序对应的Cloud-Jit-Traces格式数据CT,首先检测本地是否存在与CT相同Cloud-Jit版本号的Native-Jit-Traces格式数据,若存在,则不进行下载;若不存在,则下载CT,并创建一个Native-Jit-Traces格式数据NT,设置NT的程序标识符与CT的程序标识符相同,并依据CT中每个<字节码方法,执行路径数组,统计数据>键值对, 对应生成NT中的每个<字节码方法,执行路径数组>键值对,设置NT的Cloud-Jit版本号为CT的Cloud-Jit的版本号。
    本发明的优点与积极效果在于:通过各终端本地程序的运行获取其运行时程序中“热路径”信息,上传到云端进行整合统计,从而得到该程序运行时全面的“热路径”统计数据;最终,用户程序在空闲时,通过下载有效的云端数据来达到使程序中的“热路径”提前编译的目的,从而使运行效率得到较大的提升。
    附图说明
    图1是本发明的基于云的热路径优化方法的原理示意图;
    图2是Jit-Trace格式的数据结构示意图;
    图3是云端上传的Native-Jit-Traces格式的数据结构示意图;
    图4是将本地编译队列中的热路径转换为Native-Jit-Traces格式数据的流程示意图;
    图5是Cloud-Jit-Traces格式的数据结构示意图;
    图6是云端将Native-Jit-Traces数据转换为Cloud-Jit-Traces数据的流程图;
    图7是从云端下载路径数据并加入到本地编译队列中的流程示意图。
    具体实施方式
    下面将结合附图和实施例对本发明作进一步的详细说明。
    本发明的即时编译器中一种基于云的热路径优化方法,整体处理及优化原理如图1所示。虚框中所示为本发明改进的技术方案。对于某一应用程序,本发明在它空闲时,将它在不同本地终端产生的热路径上传到云端,然后在应用程序重新在本地执行时,从云端下载经过统计分析的最新热路径,并在程序运行空闲时予以提前编译。
    以一个Android应用程序APP为例,当它在不同的本地终端设备上运行时,会产生各自相应的基于“热路径”的即时编译代码;而所有的程序运行中产生的热路径由Dalvik虚拟机通过全局的数据结构存储,每次进行JIT检查时会根据方法的开始指令来判断是否被JIT编译过,如图2所示。这些被挑选为Jit-Trace的“热路径”在满足一定的运行时环境(程序初始化、程序空闲或者其他空闲的处理器等)下,经过如图3所示的格式进行编码打包并上传至云端,如图4所示。云端会对有关数据统计、更新等处理,如图6所示。当此Android程序在用户手机上重新运行时,从云端下载经过统计分析的最新热路径,并在程序运行空闲时予以提前编译,如图7所示,从而既能够获得热路径编译后程序运行加速的好处,避免了热路径进行重新计算和统计的计算资源浪费问题。
    下面对本发明提供的即时编译器中一种基于云的热路径优化方法的步骤进行详细说明。本发明的热路径优化方法包括步骤一至步骤四。
    步骤一,当程序空闲时,判断本地即使编译器中的热路径是否有更新,若有,则执行步 骤二,否则,转步骤三执行。
    图2描述了Dalvik虚拟机中的基于“热路径”的即时编译机制的Jit-Trace的数据结构。每个Jit-Trace数据包含一个字节码方法Method,在进行编译之前根据Method的首地址来确定是否包含或被选择为“热路径”;同时每个Jit-Trace数据还包含了一个或多个用于记录“热路径“的TraceRun信息,每个TraceRun存储了路径执行的起始偏移量、包含的字节码指令数、结束字节码和最后代码的Hint等,每个TraceRun中还包括杂项、预留空间、是否为代码标志位等。
    Method结构是类加载器通过对Dex文件的加载解析而得到的,代表了一个方法结构,存储了所属类索引,方法ID,入口地址及参数信息等。每个Jit-Trace数据对应一个Method;每个Jit-Trace包含该Method的多条执行“路径”,而每个“路径”用TraceRun来表示,记录了该“路径”的入口点(即起始偏移量)、出口点、指令数及代码标识等信息。
    步骤二,对于某一应用程序,将本地的所有Jit-Trace格式数据转换为一个Native-Jit-Traces格式数据,准备进行云端上传。本步骤在应用程序空闲时进行。
    图3描述了将虚拟机中的数据结构Jit-Trace进行相应数据处理,编码为Native-Jit-Traces数据结构,从而进行云端上传。Native-Jit-Traces是将Jit-Trace中的数据进行打包,并加入数据头形成。Native-Jit-Traces格式数据包括两部分:数据头和路径数据部分。数据头包含运行的App程序的标识符,如App的包名,签名以及版本号等;同时,数据头中还加入了Cloud-Jit的版本号,以便在进行从云端下载对应的Jit-Trace的时候的版本比较,如果云端对应的Jit-Trace版本更新,则更新本地的对应的Jit-Trace信息。版本号Cloud-Jit用于标识程序热路径信息的版本号,用于比较本地与云端的版本以确定是否需要更新,云端统计整理的热路径信息每次更新都将更新该版本号。
    Native-Jit-Traces的路径数据部分包含打包的Trace信息,以<字节码方法,执行路径数组>的键值对方式组织。其中,字节码方法对应Jit-Trace格式数据的字节码方法,执行路径数组,也称JitTraceRun数组,为可变数组,大小不定。每个JitTraceRun数组中记录对应对应字节码方法的Jit-Trace格式数据中的所有TraceRun的信息。如图3中<Mn,JitTraceRuns[mn]>,记录了字节码方法Mn以及包含Mn的所有执行路径。
    本步骤将应用程序在本地生成的所有热路径数据进行整合。一个Native-Jit-Traces格式数据包含多个Jit-Trace格式数据,JitTraceRun数组包含了其对应Method的多个TraceRun信息。
    图4给出了将在虚拟机中即时编译队列中的热路径打包成为Native-Jit-Traces数据信息,并准备上传到云端资源池的过程,当程序空闲或者有空闲处理资源的时候,该过程可被反复触发调用。
    图4中,“开始”表示本发明方法在虚拟机中开始工作。
    步骤2.1,检查App程序是否空闲或者有空闲的计算资源来为即将进行的Native-Jit-Traces数据上传到云端做准备,如果是,进行步骤2.2的执行;如果否,则结束本次的数据上传准备工作而继续程序的执行。
    步骤2.2,访问虚拟机中全局的即时状态变量中的即时编译队列,该队列是以数组的方式组织,包含了即时编译器中所有当前要进行处理或已经进行处理的Trace信息,每个数据元素为一热路径信息,对应图2所示的一个Jit-Trace格式数据,处理时会对数组元素逐个访问,当全部元素访问完成时,进行步骤2.3。
    步骤2.3,将步骤2.2中访问到编译队列的数组元素对应的Jit-Trace格式数据,按照图3所示的方式进行编码打包入对应程序的Native-Jit-Traces格式的数据中,然后进行步骤2.4。
    步骤2.4,判断编译队列的数组元素是否访问完成,如果否,返回到步骤2.1继续执行;如果是,则进行步骤2.5。
    步骤2.5,准备将已经进行打包处理为Native-Jit-Traces格式的即时编译器中的热路径数据,通过网络通信??樯洗皆贫俗试闯?。
    图4中的“结束”表示本次对本地Native-Jit-Traces格式数据的处理结束。
    步骤三,当App程序空闲或者有空闲的计算资源可用于进行Native-Jit-Traces数据上传到云端时,将位于本地的Native-Jit-Traces格式数据上传到云端,云端对Native-Jit-Traces格式数据进行处理,生成Cloud-Jit-Traces格式数据,并存储在云端数据池。
    图5中描述了Cloud-Jit-Traces的数据格式,是将同一程序的所有上传的Native-Jit-Traces的数据在云端的组织方式。Cloud-Jit-Traces数据将具有同一个App包名、签名和版本号的Native-Jit-Traces数据合并,同时在路径数据中加入对每个字节码方法的统计信息,具体以<字节码方法,执行路径数组,统计数据>的组织方式存储。如果Cloud-Jit-Traces数据中已经存在相应的<字节码方法,JitTraceRun数组>,则统计数据自增;否则加入该条Trace信息,并初始化统计数据为1。
    如图5所示路径1:<M1,JitTraceRun[m1],C1>,M1为字节码方法名称,JitTraceRun[m1]包含方法M1的m1条执行路径的信息,C1为该路径的统计数据。
    图6描述了将Native-Jit-Traces数据转换为Cloud-Jit-Traces数据的方法。图6中“开始”表示云端对上传的Native-Jit-Traces数据处理开始,当有多个Native-Jit-Traces数据上传时,可以循环调用图6过程进行处理。
    步骤3.1,读取上传到云端的Native-Jit-Traces格式数据,如设当前获取数据为NT,获取NT的数据头和路径数据信息,为下边的数据处理做准备,将对NT中的每条路径Trace逐个访问。
    步骤3.2,在云端的所有Cloud-Jit-Traces格式数据中,查找NT数据头中记录的App包 名是否存在,如果否,执行步骤3.5;如果是,则进行下一步。
    步骤3.3,在找到的Cloud-Jit-Traces格式数据中,判断NT的App签名是否与所找到数据的App签名一致,如果否,执行步骤3.5;如果是,则进行下一步。
    步骤3.4,在找到的Cloud-Jit-Traces格式数据中,判断NT的App版本号是否与所找到的数据的App版本号一致,如果否,执行步骤3.5;如果是,则获取具备与NT相同App包名、签名和版本号的Cloud-Jit-Traces格式数据,设所获取的数据为CTi,然后进行步骤3.6。
    步骤3.5,创建一个Cloud-Jit-Traces格式数据CT,设置CT的App包名为NT的App包名,CT的App签名为NT的App签名,CT的App版本为NT的App版本;将NT中的各路径添加到CT中。
    对于NT中的第i条路径Ti,路径Ti为<Mi,JitTraceRuns[mi]>,i为正整数,生成对应的路径数据项<Mi,JitTraceRuns[mi],1>存入CT中。在将NT中的所有路径存入CT中后,执行步骤3.10。
    步骤3.6,逐个读取NT中路径数据部分的路径Ti,进行下一步判断。
    路径Ti为<Mi,JitTraceRuns[mi]>,i为正整数,初始为1。
    步骤3.7,查找路径Ti是否在数据CTi中存在,具体通过在CTi中查找是否存在与Ti的字节码方法Mi和执行路径数组JitTraceRuns[mi]相同的路径数据项,来检查Ti是否在CTi中,如果否,则说明Ti这条路径是CTi的新路径,将路径Ti加入到CTi中,即向数据CTi的路径数据中加入<Mi,JitTraceRuns[mi],Ci>的数据项,Ci初始设置为1;如果是,说明CTi中已经存在Ti这条路径,继续执行下一步。
    步骤3.8,CTi中已经存在Ti路径项,则更新该路径项的统计量Ci。完成后进行下一步判断。
    步骤3.9,判断当前是否对NT中的所有路径都读取完毕,如果否,则i自增1,返回步骤3.6读取NT中的下一条路径;如果是,则进行下一步。
    步骤3.10,当程序的Cloud-Jit-Traces格式数据被新创建或者被更新过后,对Cloud-Jit-Traces格式数据的Cloud-Jit版本号进行更新,来标示其有数据变更。
    图6中“结束”表示对一个Native-Jit-Traces数据的处理结束。
    步骤四,在本地程序初始化或者本地程序空闲时,从云端下载对应程序的经过统计处理的热路径数据,即Cloud-Jit-Traces格式数据,并将热路径加入到虚拟机的即时编译队列中。
    用户从云端进行路径数据下载的过程,如图7所示,用户应用程序App初始化或者空闲的情况下可被调用。从云端资源池获取最新的路径信息,提前编译,从而提升整体运行效率。图7中,“开始”表示从云端数据下载开始。
    步骤4.1,获取当前App包名、签名和版本号,从云端资源池查找与具有相同App包名、 签名和版本号的Cloud-Jit-Traces格式数据,设找到数据CT,读取CT,完成后进行下一步判断。
    步骤4.2,检查CT的Cloud-Jit版本号,判断是否已经在本地的Native-Jit-Traces格式数据中存在,如果是,说明本地程序的热路径信息已经与云端的热路径信息同步了,返回步骤4.1,进行下一次读??;如果否,则进行下一步。
    步骤4.3,下载数据CT,获取CT的数据头和Trace数据项,并创建一个Native-Jit-Traces格式数据NT,NT中的App包名、签名和版本号与CT的相同,NT中的路径数据项根据CT中的各路径数据项生成,设置NT的Cloud-Jit版本号为CT的Cloud-Jit的版本号。完成后进行步骤4.4。
    CT中的数据项<M1,JitTraceRun[m1],C1>对应NT中的数据项<M1,JitTraceRun[m1]>。
    步骤4.4,将步骤4.3创建的Native-Jit-Traces格式数据NT,加入到虚拟机的即时编译队列,当编译队列开始工作时就可以将加入的NT中的路径进行提前编译。完成后进行步骤4.5。
    步骤4.5,针对某个应用程序App,在云端存在统计整理的Cloud-Jit-Traces格式数据,当该Cloud-Jit-Traces格式数据因为数据量过大或者超出终端的处理限制时,则需要多次从云端下载和读取。此时,检查要从云端下载的路径数据是否读取完毕,如果否,则返回步骤4.1,继续读??;如果是,则执行“结束”。
    图7中的“结束”表示对云端数据的处理结束。

    关 键 词:
    即时 编译器 一种 基于 路径 优化 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:即时编译器中一种基于云的热路径优化方法.pdf
    链接地址://www.4mum.com.cn/p-6156688.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03