[发明专利]一种用于在分布式异构环境下实现多GPU调度的方法和系统有效
申请号: | 201911296432.0 | 申请日: | 2019-12-16 |
公开(公告)号: | CN110955526B | 公开(公告)日: | 2022-10-21 |
发明(设计)人: | 李肯立;杜利凡;唐卓;贺凯林;刘翔;张学东;阳王东;周旭;刘楚波;曹嵘晖 | 申请(专利权)人: | 湖南大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 武汉臻诚专利代理事务所(普通合伙) 42233 | 代理人: | 宋业斌 |
地址: | 410001 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 分布式 环境 实现 gpu 调度 方法 系统 | ||
本发明公开了一种用于在分布式异构环境下实现多GPU调度的方法,其根据Java计算任务创建对应的GPU本地计算任务,并通过数据分块和任务分解,将GPU本地任务划分为更细粒度的GPU本地子任务,然后根据数据本地性以及从节点上所有GPU的流资源状态和内存资源状态将GPU本地子任务调度到指定GPU上执行,从而充分平衡各个GPU上的工作负载,降低Spark应用程序的执行时间。本发明能够解决现有分布式异构Spark处理框架中存在的吞吐量低、无法有效利用多个GPU、以及由于缺乏有效的GPU负载均衡策略导致的时间开销大的技术问题。
技术领域
本发明属于分布式、高性能计算技术领域,更具体地,涉及一种用于在分布式异构环境下实现多GPU调度的方法和系统。
背景技术
Spark框架是基于内存的分布式处理框架,其非常适合解决迭代计算任务,同时,迭代计算任务也同样适合被GPU处理。因此,理论上将GPU整合到Spark框架中可以极大地提高Spark框架的性能。
目前,开源版本的Spark应用程序并不支持GPU加速,而只能运行在CPU上。M.Grossman等人提出了一种分布式异构Spark处理框架,其将GPU整合到Spark框架中,利用GPU的并行计算能力来加速Spark框架。
然而,上述分布式异构处理框架存在一些不可忽略的缺陷:第一、其没有考虑使用异步流资源来并发任务到GPU上执行,这会导致所有的计算任务都被发布到默认的流并且严格按照顺序执行,因此GPU的任务并行能力并没有被有效利用,从而限制了整个处理框架的吞吐量;第二、其没有考虑从节点上配置有多个GPU的硬件情况,从而无法有效利用多个GPU来降低整个处理框架的运行时间;第三、其缺乏多GPU之间有效的负载均衡策略,多个GPU的工作负载失衡会导致整个Spark应用程序的运行时间过长,从而增加了时间开销。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种用于在分布式异构环境下实现多GPU调度的方法和系统,其目的在于,解决现有分布式异构Spark处理框架中存在的吞吐量低、无法有效利用多个GPU、以及由于缺乏有效的GPU负载均衡策略导致的时间开销大的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种用于在分布式异构环境下实现多GPU调度的方法,其是应用在包括一个主节点、以及多个从节点的Spark环境中,所述方法包括以下步骤:
(1)主节点接收用户发送的Spark应用程序,对该Spark应用程序进行解析,以得到DAG图;
(2)主节点设置计数器i=1;
(3)主节点判断i是否大于DAG图中调度阶段(即Stage)的总数,如果是则过程结束,否则进入步骤(4)。
(4)主节点将该DAG图中的第i个调度阶段划分为多个可并发执行的任务,并获取当前Spark环境中所有从节点的计算资源,并根据所有从节点的计算资源使用Spark任务调度机制将所有任务调度到对应从节点的JAVA虚拟机执行;
(5)从节点对其JVM中的任务进行数据格式转换,以将该任务对应的数据映射到堆外内存上,并使用Java本地访问库对该数据在堆外内存中的地址进行调整,以得到物理位置连续的数据;
(6)从节点调用JNA本地接口,以获取步骤(5)JVM中的任务所对应的数据在堆外内存中的起始地址、以及步骤(5)中得到的物理位置连续的数据的偏移量,并根据该起始地址和偏移量创建GPU本地任务;
(7)从节点将步骤(6)创建的GPU本地任务对应的数据进行分块处理,并为每个数据分块创建对应的GPU本地子任务;
(8)从节点判断步骤(7)创建的每个GPU本地子任务是数据缓存子任务,还是流处理子任务,如果是数据缓存子任务,则进入步骤(9),如果是流处理子任务,则进入步骤(10);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911296432.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种墙体砌筑施工工艺
- 下一篇:一种道路基面防水涂料喷涂装置