首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于即时编译的智能合约加速执行方法和装置 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:浙江大学

摘要:本发明公开了一种基于即时编译的智能合约加速执行方法和装置,包括:对以太坊节点接收的智能合约的调用请求进行合法性和有效性检测,解析检测通过的调用请求;综合考虑智能合约的调用次数、最近调用时刻和智能合约执行复杂度,判断该智能合约是否为热点智能合约;若否,由EVM解释执行智能合约字节码;若是,判断热点合约的字节码是否已编译为机器码,对未编译的,利用LLVM编译为机器码并存储在缓存中;编译完成后执行编译过后的机器码,将执行结果返回给提出调用请求的调用方。本发明提高了智能合约的执行速度,增加了系统的吞吐量和交易处理能力;具有良好的移植性和扩展性,能够适应不同类型的节点设备。

主权项:1.一种基于即时编译的智能合约加速执行方法,其特征在于,包括以下步骤:S1、调用智能合约:以太坊节点接收智能合约的调用请求,对该调用请求进行合法性和有效性检测,对检测通过的调用请求进行解析;所述调用请求由用户或其他智能合约发起,包含待执行的智能合约字节码和输入参数;S2、热点合约判断:综合考虑智能合约的调用次数、最近调用时刻和智能合约执行复杂度,判断该智能合约是否为热点合约;若否,则不进行标记,并直接进入解释执行模式由EVM解释执行智能合约字节码,输出执行结果;若是,则将该智能合约标记为热点合约,并执行S3;S3、热点合约编译状态判断:判断热点合约的字节码是否已编译为机器码;若是,则从缓存中加载对应的机器码并执行S5;若否,则执行S4;S4、编译热点合约:所述热点合约的字节码转换为LLVM中间表示,使用LLVM的优化工具链对LLVM中间表示进行优化,使用LLVM编译器将LLVM中间表示编译为能直接在硬件环境上运行的机器码,并将机器码存储在缓存中;S5:执行编译过后的机器码,执行完成后,将执行结果返回给提出调用请求的调用方,完成智能合约的执行过程;所述S2中,所述热点合约基于随时间指数衰退的热点合约识别算法判断,该算法维护一个合约调用信息的统计表,所述统计表记录每个智能合约的调用次数、计算消耗和调用时刻;根据统计表中的数据,计算每个智能合约的热度值Wi;当热度值Wi超过预设的阈值参数W时,标记该智能合约为热点合约,反之则不进行标记;热度值Wi的表达式如下: ; ;式中,i表示时刻信息,即区块高度;Wi表示当前时刻智能合约的热度值,Li表示当前时刻智能合约的活跃度;α,β,λ,μ,ν为预设的参数,α用于调整热度值对活跃度变化的敏感度,β和λ用于调整热度值随时间的衰退速度,μ和ν用于调整当前时刻智能合约的活跃度中各组成部分的权重;contract_gas_cost表示智能合约调用的总计算消耗,block_gas_cost表示当前区块中所有交易的计算消耗总和,invoke_count表示该智能合约在当前区块中被调用的次数,block_tx_count表示当前区块中的交易总数;将记录每一时刻每个智能合约的热度值,优化为记录当前时刻每个智能合约的热度值Wi,表达式如下: ;式中,k为智能合约上一次被调用的区块高度,ki。

全文数据:

权利要求:

百度查询: 浙江大学 一种基于即时编译的智能合约加速执行方法和装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。