System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及分布式计算,具体涉及一种分布式计算集群的显卡分配方法、装置、计算设备、计算机存储介质及计算机程序产品。
技术介绍
1、在分布式计算集群调用外部独立程序的场景中,外部独立程序需要调用物理节点中的显卡对数据进行处理,则需要配置显卡资源的分配。现有技术中,通常是通过手动配置方式或者基于静态分配策略的方式实现显卡资源的分配。
2、本申请专利技术人发现现有技术至少存在以下不足:手动配置方式操作复杂,人工成本较高;基于静态分配策略的方式通常需要预先设置参数,比如每个任务需要的显卡数量,无法适应动态任务负载变化或集群中各物理节点显卡资源不一致时的情形。总之,现有技术难以实现精确的显卡资源分配,显卡资源无法得到充分利用。
技术实现思路
1、鉴于上述问题,提出了本申请以便提供一种克服上述问题或者至少部分地解决上述问题的方法、装置、计算设备、计算机存储介质及计算机程序产品。
2、根据本申请的一个方面,提供了分布式计算集群的显卡分配方法,包括:
3、为分布式计算集群内的物理节点创建执行进程;
4、为执行进程创建线程;其中,线程与物理节点上的显卡一一对应;
5、通过线程调用外部程序,外部程序通过调用线程对应的显卡对调度至执行进程的任务所对应的分区数据进行处理。
6、可选地,通过线程调用外部程序之前,方法进一步包括:
7、当检测到有显卡处于空闲状态时,判断分区数据中是否还有未处理数据;
8、通过线程调用
9、若还有未处理数据,通过处于空闲状态的显卡对应的线程调用外部程序,以供外部程序调用处于空闲状态的显卡对未处理数据进行处理。
10、可选地,方法进一步包括:
11、在指定列表中记录物理节点上各个显卡的索引;
12、通过线程调用外部程序之前,方法进一步包括:
13、轮询指定列表以确定处于空闲状态的显卡。
14、可选地,通过线程调用外部程序,外部程序通过调用线程对应的显卡对调度至执行进程的任务所对应的分区数据进行处理进一步包括:
15、将任务对应的分区数据、外部程序以及显卡的索引传递给线程的包装函数,以供线程执行包装函数。
16、可选地,为执行进程创建线程进一步包括:
17、根据物理节点中显卡的数量创建相应数量的线程;
18、方法还包括:建立线程与显卡的一一对应关系。
19、可选地,方法进一步包括:
20、对待处理数据进行分区处理,得到各个分区数据;
21、根据各个分区数据划分得到各个任务,对每一个任务进行调度。
22、根据本申请的另一方面,提供了分布式计算集群的显卡分配装置,包括:
23、第一创建模块,用于为分布式计算集群内的物理节点创建执行进程;
24、第二创建模块,用于为执行进程创建线程;其中,线程与物理节点上的显卡一一对应;
25、处理模块,用于通过线程调用外部程序,外部程序通过调用线程对应的显卡对调度至执行进程的任务所对应的分区数据进行处理。
26、可选地,装置进一步包括:
27、判断模块,用于在通过线程调用外部程序之前,当检测到有显卡处于空闲状态时,判断分区数据中是否还有未处理数据;
28、处理模块进一步用于:若还有未处理数据,通过处于空闲状态的显卡对应的线程调用外部程序,以供外部程序调用处于空闲状态的显卡对未处理数据进行处理。
29、可选地,装置进一步包括:
30、记录模块,用于在指定列表中记录物理节点上各个显卡的索引;
31、轮询模块,用于在通过线程调用外部程序之前,轮询指定列表以确定处于空闲状态的显卡。
32、可选地,处理模块进一步用于:将任务对应的分区数据、外部程序以及显卡的索引传递给线程的包装函数,以供线程执行包装函数。
33、可选地,第二创建模块进一步用于:
34、根据物理节点中显卡的数量创建相应数量的线程;建立线程与显卡的一一对应关系。
35、可选地,装置进一步包括:
36、分区模块,用于对待处理数据进行分区处理,得到各个分区数据;
37、调度模块,用于根据各个分区数据划分得到各个任务,对每一个任务进行调度。
38、根据本申请的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
39、所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述分布式计算集群的显卡分配方法对应的操作。
40、根据本申请的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述分布式计算集群的显卡分配方法对应的操作。
41、根据本申请的还一方面,提供了一种计算机程序产品,包括至少一可执行指令,所述可执行指令使处理器执行如上述分布式计算集群的显卡分配方法对应的操作。
42、根据本申请实施例提供的分布式计算集群的显卡分配方法、装置、计算设备、计算机存储介质及计算机程序产品,首先,为分布式计算集群内的物理节点创建执行进程;其次为执行进程创建线程;其中,线程与物理节点上的显卡一一对应;再通过线程调用外部程序,外部程序通过调用线程对应的显卡对调度至执行进程的任务所对应的分区数据进行处理。通过为每一个物理节点创建一个执行进程,并创建与显卡一一对应的线程,每一个线程调用外部程序从而执行任务,从而保证该物理节点的所有显卡能够全部利用,有效提升了分布式计算集群中显卡的利用率,能够实现复杂集群调用外部程序时显卡资源的合理有效分配,同时,整个过程高度自动化,减少了用户的工作负担,具有较高的可扩展性。
43、上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
本文档来自技高网...【技术保护点】
1.一种分布式计算集群的显卡分配方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述通过所述线程调用外部程序之前,所述方法进一步包括:
3.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述通过所述线程调用外部程序,所述外部程序通过调用所述线程对应的显卡对调度至所述执行进程的任务所对应的分区数据进行处理进一步包括:
5.根据权利要求1所述的方法,其特征在于,所述为所述执行进程创建线程进一步包括:
6.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
7.一种分布式计算集群的显卡分配装置,其特征在于,包括:
8.一种计算设备,其特征在于,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
9.一种计算机存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-6中任一项所述的分布式计算集群
10.一种计算机程序产品,其特征在于,包括至少一可执行指令,所述可执行指令使处理器执行如权利要求1-6中任一项所述的分布式计算集群的显卡分配方法对应的操作。
...【技术特征摘要】
1.一种分布式计算集群的显卡分配方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述通过所述线程调用外部程序之前,所述方法进一步包括:
3.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述通过所述线程调用外部程序,所述外部程序通过调用所述线程对应的显卡对调度至所述执行进程的任务所对应的分区数据进行处理进一步包括:
5.根据权利要求1所述的方法,其特征在于,所述为所述执行进程创建线程进一步包括:
6.根据权利要求1所述的方法,其特征在于,所述方...
【专利技术属性】
技术研发人员:马德志,王炜,孙雷鸣,王征,焦叙明,徐强,张鹏,王海昆,张明强,黄泉城,王胜侯,王鑫磊,
申请(专利权)人:中海油田服务股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。