[发明专利]一种分布式编译方法、系统、电子设备及存储介质在审
申请号: | 202111641625.2 | 申请日: | 2021-12-29 |
公开(公告)号: | CN114296930A | 公开(公告)日: | 2022-04-08 |
发明(设计)人: | 陈旭;刘聪;时幸伟;胡亚运 | 申请(专利权)人: | 北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F11/00;G06F8/41 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 杨奇松 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 编译 方法 系统 电子设备 存储 介质 | ||
1.一种分布式编译方法,其特征在于,所述方法包括:
客户机,对接收到的编译命令进行是否分布式编译判断;
若是,则将待编译任务的编译信息发送至调度器,并从所述调度器获取编译机,以将所述待编译任务发送至所述编译机进行编译;
接收所述编译机返回的编译结果;
调度器,根据接收到的客户机发起的编译请求,从编译机信息中选取当前最佳编译机返回给客户机,以使所述当前最佳编译机执行所述待编译任务。
2.根据权利要求1所述的分布式编译方法,其特征在于,在所述对接收到的编译命令进行是否分布式编译判断的步骤之前,所述方法还包括:
记录各个编译任务执行模块的模块名和所述编译任务执行模块执行编译任务生成的库名;
基于所述模块名和所述库名生成模块依赖列表;
遍历所述模块依赖列表并计算CPU空闲率,以获得并行编译模块数,以利用所述并行编译模块数执行编译任务。
3.根据权利要求1所述的分布式编译方法,其特征在于,所述方法还包括:
所述客户机,对编译任务执行过程中生成的日志进行重定向。
4.根据权利要求1所述的分布式编译方法,其特征在于,所述对接收到的编译命令进行是否分布式编译判断,包括:
判断所述编译命令中是否含有不可分布式编译的选项、是否为轻量级任务、是否为回退任务、本地是否能够编译。
5.根据权利要求1所述的分布式编译方法,其特征在于,在所述从编译机信息中选取当前最佳编译机返回给客户机的步骤之前,所述方法还包括:
调度器接收远端守护进程定时发送的核数、内存、负载和可用编译机。
6.根据权利要求1所述的分布式编译方法,其特征在于,所述方法还包括:
在负载较低时,所述调度器,根据远端守护进程发送的编译机信息生成测试编译命令;
将所述测试编译命令发送至编译机上进行编译测试;
接收所述编译机返回的编译时长,并根据所述编译时长对所述编译机中的低性能机器进行标记。
7.根据权利要求1所述的分布式编译方法,其特征在于,所述方法还包括:
在编译时,所述调度器根据编译任务量预取一个或多个编译机作为编译任务配额;
在接收到下一个编译任务时,将所述编译任务配额分配给所述客户机。
8.一种分布式编译系统,其特征在于,所述系统包括:
客户机,用于对接收到的编译命令进行是否分布式编译判断;
若是,则将待编译任务的编译信息发送至调度器,并从所述调度器获取编译机,以将所述待编译任务发送至所述编译机进行编译;
接收所述编译机返回的编译结果;
调度器,根据接收到的客户机发起的编译请求,从编译机信息中选取当前最佳编译机返回给客户机,以使所述当前最佳编译机执行所述待编译任务。
9.一种电子设备,其特征在于,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据权利要求1至7中任一项所述的分布式编译方法。
10.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行权利要求1至7任一项所述的分布式编译方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司,未经北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111641625.2/1.html,转载请声明来源钻瓜专利网。