一种基于可重构微服务器的集群计算系统转让专利

申请号 : CN201210574582.5

文献号 : CN103064820B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谢向辉吴东钱磊原昊张昆臧春峰郝子宇张鲁飞李玺严忻凯邬贵明方兴叶楠胡苏太韦海亮周浩杰陶志荣

申请人 : 无锡江南计算技术研究所

摘要 :

一种基于可重构微服务器的集群计算系统,包括:多个可重构微服务器计算节点以及通用可扩展交换网络;多个可重构微服务器计算节点具有通用网络接口;并且通用可扩展交换网络基于通用的标准网络协议,通过网络拓扑结构将所述多个可重构微服务器计算节点的通用网络接口互连在一起。所述可重构微服务器计算节点还包括:微处理器、系统总线、内存、可重构加速部件以及输入输出外设;其中,微处理器、内存和输入输出外设连接至系统总线,从而微处理器通过系统总线与内存和输入输出外设进行数据交换;可重构加速部件连接至微处理器和/或系统总线,从而与微处理器和/或连接在系统总线上的内存和输入输出外设进行数据交换。

权利要求 :

1.一种基于可重构微服务器的集群计算系统,其特征在于包括:多个可重构微服务器计算节点以及通用可扩展交换网络;

其中,所述多个可重构微服务器计算节点具有通用网络接口;并且通用可扩展交换网络基于通用的标准网络协议,通过网络拓扑结构将所述多个可重构微服务器计算节点的通用网络接口互连在一起;所述可重构微服务器计算节点还包括:微处理器、系统总线、内存、可重构加速部件以及输入输出外设;其中,微处理器、内存和输入输出外设连接至系统总线,从而微处理器通过系统总线与内存和输入输出外设进行数据交换;而且,可重构加速部件连接至微处理器和/或系统总线,从而与微处理器和/或连接在系统总线上的内存和输入输出外设进行数据交换;

其中,可重构加速部件进一步直接连接至内存以及输入输出外设;

所述多个可重构微服务器计算节点具有扩展接口,并且多个可重构微服务器计算节点的扩展接口相互连接以形成可重构交换网络;

而且,可重构加速部件包括可重构运算加速模块以及可重构内存扩展增强模块;

其中,可重构运算加速模块用于通过定制专用的硬件加速计算结构,协助或取代微处理器完成相应的运算处理功能;

可重构内存扩展增强模块用于系统内存容量和带宽的扩展,将连接在可重构加速部件的内存通过接口转换映射到系统总线上,以扩展系统的总内存容量和聚合带宽。

2.根据权利要求1所述的基于可重构微服务器的集群计算系统,其特征在于,通用可扩展交换网络具有第一外部扩展网络接口,所述第一外部扩展网络接口用于连接其它可重构微服务器计算节点,并且用于支持可重构微服务器集群系统与其它类型的计算系统结合与协同。

3.根据权利要求2所述的基于可重构微服务器的集群计算系统,其特征在于,可重构加速部件进一步直接连接至用于系统功能扩展的扩展接口。

4.根据权利要求1或2所述的基于可重构微服务器的集群计算系统,其特征在于,可重构微服务器计算节点包括多个可重构加速部件,并且多个可重构加速部件通过扩展接口实现互连与协同;并且扩展接口还用于多个微服务器之间的互连与协同。

5.根据权利要求1或2所述的基于可重构微服务器的集群计算系统,其特征在于,可重构加速部件包括:可重构内存扩展增强模块以及/或者可重构I/O扩展增强模块;

其中,可重构内存扩展增强模块用于系统内存容量和带宽的扩展,将连接在可重构加速部件的内存通过接口转换映射到系统总线上,以扩展系统的总内存容量和聚合带宽;并且可重构内存扩展增强模块用于增强内存访问能力,根据内存访问模式进行重构,实现相应的优化策略或加速功能,为微处理器或可重构运算加速模块提供内存访问接口;

其中,可重构I/O扩展增强模块用于实现系统I/O的扩展与增强,其中可重构I/O扩展增强模块对同一个物理接口实现多种I/O接口控制器,以支持多种I/O接口协议和设备,并且,可重构I/O扩展增强模块对系统I/O资源进行整合,而且,可重构I/O扩展增强模块还直接对I/O数据进行运算和处理,以实现离线处理、数据预处理器的功能。

6.根据权利要求5所述的基于可重构微服务器的集群计算系统,其特征在于,所述可重构微服务器计算节点的可重构加速部件采用可编程逻辑器件实现。

说明书 :

一种基于可重构微服务器的集群计算系统

技术领域

[0001] 本发明涉及计算技术领域,更具体地说,本发明涉及一种基于可重构微服务器的集群计算系统。

背景技术

[0002] 传统集群计算系统是将基于通用处理器的微机或服务器,通过标准网络连接起来,构建成一定规模的并行计算系统。
[0003] 但是,由于传统集群系统采用标准微机或服务器构建而成,其中的很多配置和资源实际并不需要,从而造成的成本和功耗的浪费,同时由于通用微机和服务器的体积相对较大,使用其构建的集群系统的节点密度较低,会占用较大的空间。
[0004] 因此,希望提供一种防止浪费实际并不需要的配置和资源,并且具有更高效能的集群计算系统。

发明内容

[0005] 本发明所要解决的技术问题是针对现有技术中存在上述缺陷,提供一种能够防止浪费实际并不需要的配置和资源的集群计算系统。
[0006] 根据本发明,提供了一种基于可重构微服务器的集群计算系统,包括:多个可重构微服务器计算节点以及通用可扩展交换网络;其中,所述多个可重构微服务器计算节点具有通用网络接口;并且通用可扩展交换网络基于通用的标准网络协议,通过网络拓扑结构将所述多个可重构微服务器计算节点的通用网络接口互连在一起。
[0007] 优选地,所述可重构微服务器计算节点还包括:微处理器、系统总线、内存、可重构加速部件以及输入输出外设;其中,微处理器、内存和输入输出外设连接至系统总线,从而微处理器通过系统总线与内存和输入输出外设进行数据交换;而且,可重构加速部件连接至微处理器和/或系统总线,从而与微处理器和/或连接在系统总线上的内存和输入输出外设进行数据交换。
[0008] 优选地,通用可扩展交换网络具有第一外部扩展网络接口,所述第一外部扩展网络接口用于连接其它可重构微服务器计算节点,并且用于支持可重构微服务器集群系统与其它类型的计算系统结合与协同。
[0009] 优选地,所述多个可重构微服务器计算节点具有扩展接口,并且多个可重构微服务器计算节点的扩展接口相互连接以形成可重构交换网络。
[0010] 优选地,重构加速部件进一步直接连接至内存以及输入输出外设。
[0011] 优选地,可重构加速部件包括可重构运算加速模块以及/或者可重构内存扩展增强模块;其中,可重构运算加速模块用于通过定制专用的硬件加速计算结构,协助或取代微处理器完成相应的运算处理功能;可重构内存扩展增强模块用于系统内存容量和带宽的扩展,将连接在可重构加速部件的内存通过接口转换映射到系统总线上,以扩展系统的总内存容量和聚合带宽。
[0012] 优选地,可重构加速部件进一步直接连接至用于系统功能扩展的扩展接口。
[0013] 优选地,可重构微服务器计算节点包括多个可重构加速部件,并且多个可重构加速部件通过扩展接口实现互连与协同;并且扩展接口还用于多个微服务器之间的互连与协同。
[0014] 优选地,可重构加速部件包括:可重构内存扩展增强模块以及/或者可重构I/O扩展增强模块;其中,可重构内存扩展增强模块用于系统内存容量和带宽的扩展,将连接在可重构加速部件的内存通过接口转换映射到系统总线上,以扩展系统的总内存容量和聚合带宽;并且可重构内存扩展增强模块用于增强内存访问能力,根据内存访问模式进行重构,实现相应的优化策略或加速功能,为微处理器或可重构运算加速模块提供内存访问接口;其中,可重构I/O扩展增强模块用于实现系统I/O的扩展与增强,其中可重构I/O扩展增强模块对同一个物理接口实现多种I/O接口控制器,以支持多种I/O接口协议和设备,并且,可重构I/O扩展增强模块对系统I/O资源进行整合,而且,可重构I/O扩展增强模块还直接对I/O数据进行运算和处理,以实现离线处理、数据预处理器的功能。
[0015] 优选地,所述可重构微服务器计算节点的可重构加速部件采用可编程逻辑器件实现。
[0016] 本发明提出了一种基于可重构微服务器的集群计算系统,采用可重构微服务器作为基本计算节点,采用标准互连网络与可重构扩展网络相结构的混合网络架构,将大量可重构微服务器节点高效互连与集成,构建高效能的可重构微服务器集群计算系统。

附图说明

[0017] 结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:
[0018] 图1示意性地示出了根据本发明第一实施例的基于可重构微服务器的集群计算系统的总体结构。
[0019] 图2示意性地示出了根据本发明第二实施例的基于可重构微服务器的集群计算系统的总体结构。
[0020] 图3示出了根据本发明实施例采用的可重构微服务器计算节点的总体结构。
[0021] 图4示出了根据本发明实施例采用的可重构微服务器计算节点的另一种总体结构。
[0022] 需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。

具体实施方式

[0023] 为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对本发明的内容进行详细描述。
[0024] 随着半导体技术的发展,一些非传统的计算形式也逐渐兴起,可重构计算就是非常重要的一类。可重构计算通常基于FPGA(现场可编程门阵列)等可编程逻辑器件,通过对其硬件逻辑进行编程,实现针对特定应用的专用硬件加速逻辑,实现对应用的硬件加速。由此,本发明提出了一种将低功耗微处理器和可重构加速部件紧密耦合的可重构微服务器系统,具有功耗低、性能高、体积小的特点,可以用其作为计算节点,构建高效能的集群计算系统。
[0025] <第一实施例>
[0026] 图1示意性地示出了根据本发明第一实施例的基于可重构微服务器的集群计算系统的总体结构。其中,采用可重构微服务器作为基本计算节点,使用通用可扩展交换网络200实现基本的系统互连网络。
[0027] 具体地说,如图1所示,根据本发明第一实施例的基于可重构微服务器的集群计算系统包括:多个可重构微服务器计算节点(可重构微服务器计算节点1、可重构微服务器计算节点2、可重构微服务器计算节点3、…可重构微服务器计算节点4、可重构微服务器计算节点5、可重构微服务器计算节点6)以及通用可扩展交换网络200。
[0028] 其中,所述多个可重构微服务器计算节点具有通用网络接口;并且通用可扩展交换网络200基于通用的标准网络协议,通过网络拓扑结构将所述多个可重构微服务器计算节点的通用网络接口互连在一起,实现标准的集群网络环境。
[0029] 采用可重构微服务器的基本计算节点将低功耗微处理器和可重构加速部件紧密耦合,扩展和增强了系统的计算能力、内存能力和I/O能力,在保持低功耗的同时具有更高的应用性能,同时可重构微服务器的节点功耗和体积较小,有利于构建高密度、大规模的集群计算系统。可重构微服务器具有标准的通用网络接口,能够利用通用交换网络构建标准的集群网络环境。此外,可重构微服务器还可以由可重构加速部件提供可重构扩展网络接口,能够将其连接在可重构交换网络上,实现面向应用优化的专用互连网络。
[0030] 通用可扩展交换网络200基于通用的标准网络协议,它通过一定的网络拓扑结构将可重构微服务器计算节点的通用网络接口互连在一起,实现标准的集群网络环境,具有良好的通用性和兼容性,其拓扑结构和交换带宽、协议可以根据实际应用需要进行选择和配置。
[0031] 同时,优选地,如图1所示,通用可扩展交换网络200对外还提供第一外部扩展网络接口201,一方面能够实现更大规模可重构微服务器集群系统的构建,另一方面能够支持可重构微服务器集群系统与其它类型的计算系统结合与协同,实现混合异构计算系统。即,通用可扩展交换网络200具有第一外部扩展网络接口201,该第一外部扩展网络接口201一方面用于连接其它可重构微服务器计算节点,另一方面用于支持可重构微服务器集群系统与其它类型的计算系统结合与协同,从而可以实现混合异构计算系统。
[0032] 由此,本发明提出了一种基于可重构微服务器的集群计算系统,采用可重构微服务器作为基本计算节点,采用标准互连网络与可重构扩展网络相结构的混合网络架构,将大量可重构微服务器节点高效互连与集成,构建出低功耗、高密度、高效能的可重构微服务器集群计算系统。
[0033] <第二实施例>
[0034] 图2示意性地示出了根据本发明第二实施例的基于可重构微服务器的集群计算系统的总体结构。其中,采用可重构微服务器作为基本计算节点,使用通用可扩展交换网络实现基本的系统互连网络,同时还可以将各节点的可重构加速部件通过可重构交换网络连接,实现多重混合网络架构。
[0035] 具体地说,如图2所示,多个可重构微服务器计算节点(可重构微服务器计算节点1、可重构微服务器计算节点2、可重构微服务器计算节点3、…可重构微服务器计算节点4、可重构微服务器计算节点5、可重构微服务器计算节点6)具有扩展接口,并且多个可重构微服务器计算节点的扩展接口相互连接以形成可重构交换网络300。
[0036] 作为可选项,可重构微服务器集群系统还可以利用各节点上可重构加速部件的扩展接口实现一个专用的可重构交换网络300,根据应用需求实现特定的网络协议和互连网络拓扑结构,实现面向应用优化的协同专用互连网络。
[0037] 可重构交换网络300的可重构能力体现在两个方面,一是节点上的网络接口由可重构加速部件提供,从而既可以实现标准的通用网络接口协议,也可以根据需要定制、重构和加速网络接口协议。另一方面,可重构交换网络300本身的拓扑结构的交换协议也能够根据需求进行定制与重构,既可以像通用交换网络一样使用固定的拓扑结构和标准的网络交换协议,也可以根据应用需要和内部可重构网络接口的特点实现特定的拓扑结构和协议。
[0038] 优选地,可重构交换网络300同样提供第二外部扩展网络接口301。由此,一方面能够实现更大规模可重构微服务器集群系统的构建,另一方面能够支持可重构微服务器集群系统与其它类型的计算系统结合与协同,实现混合异构计算系统。
[0039] <可重构微服务器计算节点的具体结构>
[0040] <第一具体示例>
[0041] 下面将具体描述本发明实施例采用的可重构微服务器计算节点的具体结构。
[0042] 图3示出了根据本发明实施例采用的可重构微服务器计算节点的总体结构。如图3所示,根据本发明第一具体示例的可重构微服务器计算节点包括:微处理器10、系统总线
100、内存20、可重构加速部件30以及输入输出外设(以下简称I/O外设)40。
[0043] 其中,微处理器10、内存20和输入输出外设40连接至系统总线100,从而微处理器10通过系统总线100与内存20和输入输出外设40进行数据交换。
[0044] 其中,可重构加速部件30连接至微处理器10和/或系统总线100,从而与微处理器10和/或连接在系统总线100上的内存和输入输出外设进行数据交换。此外,可重构加速部件30可以连接独立的内存、输入输出外设和其它扩展接口,这将在后面予以具体描述。
[0045] 具体地说,微处理器10可直接连接至可重构加速部件30,从而通过可重构加速部件30与内存20和输入输出外设40进行数据交换、访问和控制,而且还能够访问和控制可重构加速部件里面的功能模块,例如下文将要详细描述的可重构运算加速模块31或者可重构内存扩展增强模块32等。并且/或者,可重构加速部件30连接至系统总线100,从而通过系统总线100与内存20和输入输出外设40进行数据交换。例如,I/O外设40包括但不限于硬盘、网络、USB等设备。
[0046] 其中,例如,可重构加速部件30包括:可重构运算加速模块31以及可重构内存扩展增强模块32。而且,可重构加速部件30可以连接独立的内存20;更具体地说,可重构加速部件30的可重构内存扩展增强模块32可以连接独立的内存20。
[0047] 具体地说,可重构微服务器计算节点采用低功耗的微处理器10作为通用处理核心,系统的内存20和I/O外设40(硬盘、网络、USB等)通过相应的接口控制器与系统总线100相连。微处理器10通过系统总线100访问和控制内存20和I/O外设40。由于可重构微服务器计算节点更加注重系统的总体效能,其配置的选择需要综合考虑应用需求、成本功耗开销、器件体积等多方面因素,构建更加平衡高效的服务器系统。
[0048] 可重构微服务器计算节点在上述通用处理器体系结构的基础上,引入了可重构加速部件30构建系统。可重构加速部件30能够通过多条数据通路与系统耦合,首先可以通过微处理器接口直接与微处理器10通信,实现与微处理器10的紧密结合,扩展微处理器10的资源和能力,其次可以与微处理器10的系统总线100相连,通过其访问到连接在系统总线100上的内存、硬盘、网络等资源。
[0049] 具体地说,其中,可重构运算加速模块31是在可重构加速部件30中通过硬件重构所实现的硬件逻辑模块,其主要功能是针对实际应用需求特点,通过定制专用的硬件加速计算结构,协助或取代微处理器10完成相应的运算处理功能,从而提高系统的运算能力,实现对处理器运算能力的增强。
[0050] 可重构内存扩展增强模块32可以用于系统内存容量和带宽的扩展,它可以将连接在可重构加速部件30的独立的内存20通过接口转换映射到系统总线100上,以扩展系统的总内存容量和聚合带宽。
[0051] <第二具体示例>
[0052] 此外,图4示出了根据本发明实施例采用的可重构微服务器计算节点的另一总体结构。具体地说,图4所示的根据本发明第二具体示例的可重构微服务器计算节点是在图3所示的根据本发明第一具体示例的可重构微服务器计算节点的基础上进行进一步的改进。
[0053] 如图2所示,在根据本发明第二实施例的可重构微服务器计算节点中,可重构加速部件30还可以具有私有的外部接口,由此其不仅可以如第一实施例那样直接连接独立的内存20,而且可以直接连接独立的,从而扩展和增强系统资源和能力。
[0054] 另外,优选地,可重构加速部件30还可以直接连接至用于系统功能扩展的扩展接口50。由此,可以通过扩展接口50实现更进一步的系统功能扩展,比如连接定制扩展功能模块等。
[0055] 并且,在具体实施例中,还可通过扩展接口50实现多个可重构加速部件30互连与协同,在这种情况下,可重构微服务器计算节点可包括多个可重构加速部件30,并且多个可重构加速部件30通过扩展接口50实现互连与协同。
[0056] 可重构加速部件30采用低功耗的可编程逻辑器件(例如,FPGA)实现,能够通过硬件编程重构其硬件逻辑结构,实现多种硬件功能模块,扩展和增强系统的计算、内存、I/O等各方面能力。
[0057] 其中,例如,可重构加速部件30包括:可重构运算加速模块31、可重构内存扩展增强模块32以及可重构I/O扩展增强模块33。
[0058] 具体地说,其中,可重构运算加速模块31是在可重构加速部件30中通过硬件重构所实现的硬件逻辑模块,其主要功能是针对实际应用需求特点,通过定制专用的硬件加速计算结构,协助或取代微处理器10完成相应的运算处理功能,从而提高系统的运算能力,实现对处理器运算能力的增强。
[0059] 可重构加速部件30能够通过私有外部接口直接连接内存20,此时可以通过可重构内存扩展增强模块32实现系统内存能力的扩展与增强。一方面,可重构内存扩展增强模块32可以用于系统内存容量和带宽的扩展,它可以将连接在可重构加速部件30的内存通过接口转换映射到系统总线100上,以扩展系统的总内存容量和聚合带宽。另一方面,可重构内存扩展增强模块32可以用于增强内存访问能力,它能够根据实际应用的内存访问模式进行重构,实现相应的优化策略或加速功能,为微处理器10或可重构运算加速模块31提供更加灵活高效的内存访问接口,提高系统的内存访问效率和性能。
[0060] 可重构加速部件30能够通过私有外部接口连接硬盘、网络等I/O设备,此时可以通过可重构I/O扩展增强模块33实现系统I/O的扩展与增强。首先,可重构I/O扩展增强模块33能够对同一个物理接口实现多种I/O接口控制器,从而支持多种I/O接口协议和设备,提高系统I/O接口兼容性和适应性。其次,可重构I/O扩展增强模块33能够对系统I/O资源进行整合,实现系统I/O资源的聚合、共享等功能。此外,可重构I/O扩展增强模块33还可以直接对I/O数据进行一些运算和处理,实现离线处理、数据预处理器等功能,由此可以减轻系统运算部件的负载,扩展和增强系统的I/O能力。
[0061] 可重构加速部件的上述三种功能模块,可以根据实际应用需求选择和组合,重构其硬件结构,实现对传统微服务器在计算、内存、I/O等多方面能力的增强,提高微服务器的处理能力和效率。
[0062] 而且,虽然在上述具体实施例中,示出了可重构加速部件30包括可重构运算加速模块31、可重构内存扩展增强模块32以及可重构I/O扩展增强模块33,从而可以通过可重构加速部件30实现增强计算、增强内存和增强IO三类功能,但是应该理解的是,在具体实现时,可重构加速部件30可能只包括可重构运算加速模块31、可重构内存扩展增强模块32以及可重构I/O扩展增强模块33中的一个或者两个,从而实现增强计算、增强内存和增强IO三类功能中的一个或者两个功能。
[0063] 上述可重构微服务器计算节点结构将低功耗微处理器与可重构加速部件紧密耦合来构建微服务器系统,通过可重构运算加速模块、可重构内存扩展增强模块、可重构I/O扩展增强模块等多种功能模块,实现系统计算能力、内存能力、I/O能力等多方面扩展与增强,在保持低功耗的特点的同时,提高了微服务器的处理能力和效率,形成了一种全新的服务器形态。
[0064] 此外,需要说明的是,除非特别指出,否则说明书中的术语“第一”、“第二”、“第三”等描述仅仅用于区分说明书中的各个组件、元素、步骤等,而不是用于表示各个组件、元素、步骤之间的逻辑关系或者顺序关系等。
[0065] 可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。