[发明专利]一种基于Spark与GPU的并行计算系统在审
申请号: | 201710270400.8 | 申请日: | 2017-04-24 |
公开(公告)号: | CN107168782A | 公开(公告)日: | 2017-09-15 |
发明(设计)人: | 郑健;杜姗姗;冯瑞;金城;薛向阳 | 申请(专利权)人: | 复旦大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F15/173 |
代理公司: | 上海正旦专利代理有限公司31200 | 代理人: | 陆飞,陆尤 |
地址: | 200433 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 spark gpu 并行 计算 系统 | ||
技术领域
本发明属于并行计算技术领域,具体涉及一种基于Spark与GPU的并行计算框架系统。
背景技术
当今社会,各行业需要处理的数据规模已经呈现海量趋势,大数据引起了社会各行业的的广泛关注。毋庸置疑,大数据蕴含着丰富的有用信息,如果能够合理地挖掘和使用大数据,将对科学研究和社会经济产生巨大的促进作用。由于大数据中所蕴含的信息能够辅助商业决策与科学研究,所以已经在许多行业内得到了快速的发展与应用。在大数据时代中,一切以数据为中心,从海量的历史数据中能够挖掘分析出许多通过其它方式无法获得的有效信息,从而提高决策的准确性。
分布式计算的发展为充分发掘数据价值提供了有效的手段。分布式计算能够利用廉价的计算机集群,对海量数据进行快速计算分析,有从而有效的节省了数据分析成本。在这样的环境下,一批分布式计算框架技术应运而生,其中Spark由于其基于内存计算的特性,能够有效提升数据处理的效率,且在机器学习与交互式分析等领域有着广泛的应用。
与此同时,GPU因其拥有众多核心的特性,使其在很多应用中能够取得比单纯CPU计算更高的计算效率,而这种加速效果往往是以十倍或是百倍来衡量。相比单纯的提升CPU性能,利用GPU进行并行计算往往更加廉价和有效。这使得GPU在高性能计算领域有着重要的地位。
虽然Spark能够有效的处理数据密集型作业,但对于计算密集型作业来说不太适合。且集群规模扩展有限,如果单纯使用CPU进行计算,那么对于大批量作业的处理性能提升仍然有待提高。如果能够在Spark中引入对GPU设备的支持,使其既能够充分发挥Spark本身高效内存计算的特性,又能够利用GPU多核并行计算的优势,这将极大提升对海量数据的处理效率。
原生Spark框架中没有引入对GPU设备的支持,现有的在Spark中调用GPU加速计算的解决方案是基于在Java/Scala语言中调用C/C++程序进行处理,这种方式存在很多弊端。由于Spark中无法感知GPU计算任务,所以其无法区分CPU任务与GPU任务,在调度任务执行时,将可能会在不含GPU设备的节点中启动GPU任务,造成任务执行失败。且在YARN资源管理器中,只支持对CPU与内存资源的调度,无法感知GPU资源,其无法向上层的Spark框架提供对GPU资源的分配与调度。由于YARN与Spark框架自身的原因,在Spark中执行GPU计算的传统方法无法适应异构集群环境。
发明内容
本发明的目的在于提供一种处理效率高,且能够适应异构集群环境的基于Spark与GPU的并行计算系统。
本发明提供的基于Spark与GPU的并行计算系统,将Spark与GPU进行整合,使其能够有效的处理数据密集型与计算密集型作业,极大提高了作业处理效率。
本发明提供的基于Spark与GPU的并行计算框架系统,包括:
组件一,改进的的资源管理平台,其支持对GPU、CPU与内存等多维资源进行调度与管理;
组件二,改进的Spark分布式计算框架,其支持对GPU型任务的调度与执行。
(1)所述改进的的资源管理平台,包括:
改进YARN的资源管理器与节点管理器,使其能够有效感知异构集群的GPU资源,从而支持对集群GPU资源的管理与调度。其中,包括资源表示模型、资源调度模型、资源抢占模型、资源隔离机制及GPU设备的动态绑定机制的改进。
(2)所述改进的Spark分布式计算框架,包括:
改进Spark的资源申请与分配机制、作业调度机制与任务执行机制,使其支持对GPU型任务的调度与执行。通过在资源申请、资源分配、DAG生成、stage划分与任务执行等阶段引入对GPU资源的标识,使其执行引擎能够感知GPU任务,并在异构集群中有效执行。
本发明中,所述改进的的资源管理平台,能够支持对包含GPU资源在内的多维资源进行管理与调度。具体来说:
关于资源表示模型,首先可自定义节点中包含的GPU设备数量,并修改资源表示协议,使其增加对GPU资源的表示。待节点启动时,节点管理器初始化资源列表,并与资源管理器通过心跳机制汇报该节点的资源信息。
关于资源调度模型,本发明将GPU与CPU、内存资源一起添加到资源管理平台的层级管理队列中。这样不仅能够保持资源管理的统一性,也能更灵活的针对GPU资源进行权限的设定,更适合在大规模集群中处理多用户作业的场景下应用。本发明依据DRF算法对资源调度模块进行修改,使其添加对GPU资源的调度与管理。该算法如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710270400.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种3D打印子任务调度方法和装置
- 下一篇:一种数据迁移方法及系统