一种基于混合异构处理器的云服务架构的制作方法

文档序号:27262036发布日期:2021-11-05 22:22阅读:186来源:国知局
一种基于混合异构处理器的云服务架构的制作方法

1.本发明涉及云服务架构领域,尤其涉及一种基于混合异构处理器的云服务架构。


背景技术:

2.近年来,为满足领域日益增长的计算需求,兴起了一种搭载了多种加速组件的异构计算系统。其中以“cpu+gpu”异构系统最为常见,与用于传统计算的cpu相比,“cpu+gpu”搭载结构,适合对大量的数据进行并行计算,在浮点计算、并行计算领域取得了突破性的成就并且拥有巨大的提升潜力。
3.在传统计算机中,无论是cpu,还是作为协处理器的gpu,均属于冯
·
诺依曼结构,即指令译码执行、共享内存。但在该结构中,由于指令流的控制逻辑复杂,不可能有太多条独立的指令流,而为每一个新问题开发专用的芯片又成本过高,这对硬件算力性能的提升带来了极大的挑战。
4.fpga具有丰富的计算资源,并且具有功耗低、时延小、吞吐量大等优点,同时fpga比cpu甚至gpu的计算效率更高,因为其是无指令、无需共享内存的体系结构,每个逻辑单元的功能在重编程时就已经确定,不需要指令;其次,对比gpu几乎只有的数据并行,fpga则同时拥有流水线并行和数据并行,可以根据处理数据包的步骤搭建出不同流水线,在gpu的计算单元都按照统一步调进行运算时,fpga早就已经对运算过程分散地处理完毕了。
5.因此,在以通用处理器计算和特定目的的协处理器计算构成的混合异构系统中,作为有着更加高效的数据处理能力和基础架构的fpga,延续了以“cpu+gpu”的第一代异构计算,形成了“cpu+fpga”的第二代异构计算。其逻辑是在每一个用户服务器与基础前端处理系统中,部署“cpu+fpga”异构处理单元,在数据到达用户服务器之前,可以更快速、更高效的对数据进行提前处理。


技术实现要素:

6.针对图像处理系统在处理大量数据时难以满足处理实时性要求的问题,本发明公开了一种基于混合异构处理器的云服务架构,其具体包括,云服务软件和混合异构处理器硬件处理单元,云服务软件运行于混合异构处理器硬件处理单元上;混合异构处理器硬件处理单元包括若干个计算资源节点;
7.各计算资源节点通过高速网络进行互联互通并构成计算网络,各个计算资源节点之间的信息传输,采用基于消息的交互机制;
8.各计算资源节点所构成的计算网络,采用基于云计算的全网络拓扑架构,实现计算资源节点的实时调用;所述的云服务软件,对各处理功能采用微服务实现,从而完成各处理功能的实时加载启动与轻量化部署。
9.各计算资源节点所构成的计算网络,根据图像处理任务需求及负载运行情况,对所有的计算资源节点进行动态配置;
10.混合异构处理器硬件单元包含cpu处理逻辑子单元和fpga处理逻辑子单元,该两
个子单元,通过云服务软件作为载体,对两个子单元的硬件处理资源进行统一定义和描述,实现云服务软件对两个子单元的的硬件处理资源的统一调用。
11.所述的cpu处理逻辑子单元,其内部集成通用cpu硬件处理资源,用于完成操作系统、系统软件、通用应用程序中的调度、循环、分支、逻辑判断指令类处理操作;
12.所述的fpga处理逻辑子单元,其内部集成专用fpga硬件处理资源,用于完成高速逐位运算、运算步骤重复、bit操作类的数据类处理操作;fpga处理逻辑子单元根据遥感卫星图像数据特点,动态开发与该特点对应的特定功能的数据处理逻辑,并且能对fpga硬件处理资源进行动态逻辑加载。
13.所述的云服务软件,包括web前端、网页服务器、业务应用层、桥接层、处理层;web前端与网页服务器相连接,网页服务器与业务应用层相连接,业务应用层与桥接层相连接,桥接层与处理层相连接。业务应用层和处理层之间,以桥接层为消息传输通道,处理层中的各模块的参数,通过桥接层发送至业务应用层中,处理层用于发送启动和停止命令,收集状态信息等;各层间相互发送特定消息来处理特定事务。桥阶层不仅为业务应用层和处理层提供消息服务,在业务应用层内部、业务应用层的各模块之间,都作为桥梁传递消息。web前端用于实现用户与该平台的交互;网页服务器用于为用户提供对该平台的信息浏览服务。
14.所述的各计算资源节点所构成的计算网络,采用kubernetes集群来实现,基于混合异构处理器的云服务架构的云服务功能,通过在kubernetes集群上部署管理工具来实现,其将图像处理过程中的每个环节,映射为相应的软件功能模块,包括数据接收模块、解压缩功能模块、格式解析功能模块、数据排序功能模块、前后端接口功能模块,同时把混合异构处理器硬件单元抽象为一类软件功能模块,云服务软件包括上述所有的软件功能模块,上述所有的软件功能模块,封装进各docker容器,采用kubernetes集群部署管理工具,把各docker容器分组配置为kubernetes集群中的node节点。kubernetes集群将其每个pod构建为一个微服务,pod是kubernetes集群中创建和部署的最小单元;每个微服务包含一个异构处理软件,多个微服务进行串联,组成一个业务处理链,对数据进行逐级处理;kubernetes集群动态建立业务处理链;kubernetes集群上部署的管理工具对pod构成的微服务进行动态管理和动态调用。
15.本发明的有益效果为:
16.本发明基于混合异构处理器的云服务架构,完全契合了云计算中对分布式计算功能节点的系统要求,在内部功能软件的配合下,完全可以无缝纳入云计算的环境中。
17.传统方式由于硬件开发门槛高,代价大,时间长,会耗费大量的精力,本发明采用的云服务方式为可以提供高附加值的服务,能聚焦于业务的整合和解决方案。在享有性能优势的同时,省去了硬件开发板研发和测试等诸多环节。
附图说明
18.图1为本发明的混合异构处理器云服务架构的示意图。
19.图2为本发明的消息驱动机制示意图。
具体实施方式
20.为了更好的了解本发明内容,这里给出一个实施例。
21.本发明公开了一种基于混合异构处理器的云服务架构,图1为本发明的混合异构处理器云服务架构的示意图,图2为本发明的消息驱动机制示意图,其具体包括,云服务软件和混合异构处理器硬件处理单元,云服务软件运行于混合异构处理器硬件处理单元上;混合异构处理器硬件处理单元包括若干个计算资源节点;
22.各计算资源节点通过高速网络进行互联互通并构成计算网络,各个计算资源节点之间的信息传输,采用基于消息的交互机制,在进行信息传输时,资源建链及释放延迟优化至毫秒级;
23.各计算资源节点所构成的计算网络,采用基于云计算的全网络拓扑架构,实现计算资源节点的实时调用;所述的云服务软件,对各处理功能采用微服务实现,从而完成各处理功能的实时加载启动与轻量化部署,能够支持功能模块的快速开发与服务功能的快速加载。
24.各计算资源节点所构成的计算网络,根据图像处理任务需求及负载运行情况,对所有的计算资源节点进行动态配置;
25.混合异构处理器硬件单元包含cpu处理逻辑子单元和fpga处理逻辑子单元,该两个子单元,通过云服务软件作为载体,对两个子单元的硬件处理资源进行统一定义和描述,实现云服务软件对两个子单元的的硬件处理资源的统一调用,从而使两个单元呈现为一个独立的异构处理软件单元。
26.所述的cpu处理逻辑子单元,其内部集成通用cpu硬件处理资源,用于完成操作系统、系统软件、通用应用程序中的调度、循环、分支、逻辑判断指令类处理操作;
27.所述的fpga处理逻辑子单元,其内部集成专用fpga硬件处理资源,用于完成高速逐位运算、运算步骤重复、bit操作类的数据类处理操作;fpga可灵活定制流水线并行和数据并行,具有执行效率高,数据吞吐量大等特点,在处理特定运算时性能远超cpu。
28.本架构设计中提及的数据,其码流格式具有流式、分块、分段、层层封包的特点,非常适合链式逐级处理,但因为数据量大、实时性要求高,所以对每一级的处速度要求非常高,本发明中的异构处理单元,在单级数据处理性能方面完全能满足要求。
29.fpga处理逻辑子单元根据遥感卫星图像数据特点,动态开发与该特点对应的特定功能的数据处理逻辑,并且能对fpga硬件处理资源进行动态逻辑加载,具有极强的可扩展性及可维护性。遥感卫星图像数据特点,是指遥感卫星图像数据量大、处理实时性要求高的特点。
30.参照图2,计算资源节点间采用基于消息的交互机制,资源建链及释放延迟优化至毫秒级;所述的云服务软件,包括web前端、网页服务器即webserver层、业务应用层、桥接层、处理层;web前端与网页服务器相连接,网页服务器与业务应用层相连接,业务应用层与桥接层相连接,桥接层与处理层相连接。业务应用层和处理层之间,以桥接层为消息传输通道,处理层中的各模块的参数,通过桥接层发送至业务应用层中,处理层用于发送启动和停止命令,收集状态信息等,两层之间不直接互联;各层间相互发送特定消息来处理特定事务。桥阶层不仅为业务应用层和处理层提供消息服务,在业务应用层内部、业务应用层的各模块之间,都作为桥梁传递消息。web前端用于实现用户与该平台的交互;网页服务器用于为用户提供对该平台的信息浏览服务。
31.所述的各计算资源节点所构成的计算网络,采用kubernetes集群来实现,基于混
合异构处理器的云服务架构的云服务功能,通过在kubernetes集群上部署管理工具来实现,其将图像处理过程中的每个环节,映射为相应的软件功能模块,包括数据接收模块、解压缩功能模块、格式解析功能模块、数据排序功能模块、前后端接口功能模块,同时把混合异构处理器硬件单元抽象为一类软件功能模块,云服务软件包括上述所有的软件功能模块,上述所有的软件功能模块,封装进各docker容器,采用kubernetes集群部署管理工具,把各docker容器分组配置为kubernetes集群中的node节点,从而实现升级后系统的集中管理、统一部署。kubernetes集群将其每个pod构建为一个微服务,pod是kubernetes集群中创建和部署的最小单元;每个微服务包含一个异构处理软件,多个微服务进行串联,组成一个业务处理链,对数据进行逐级处理;kubernetes集群动态建立业务处理链,不会因为单个部件节点故障导致某条链路设备无法工作;kubernetes集群上部署的管理工具对pod构成的微服务进行动态管理和动态调用。
32.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1