可重构系统的构建方法和装置与流程

文档序号:11829640阅读:150来源:国知局
可重构系统的构建方法和装置与流程
本发明涉及计算机体系结构
技术领域
,更具体的说是涉及一种可重构系统的构建方法和装置。
背景技术
:本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。可重构计算(ReconfigurableComputing,PC)在20实际60年代末被提出,试图在达到比软件实现更高性能的前提下,提供一定的硬件实现灵活性。可重构系统的构建同软件架构的设计类似,在将计算映射到硬件资源上时,会有多种实现方式:如纯软件实现方式和纯硬件实现方式,也可以采用软硬件混合架构来实现,并且各种处理方式又有更为具体的多种实现方式。因此,需要从多种实现方式中选择一种能够满足实际应用需求的方式作为目标实现方案,但是现有技术中并没有相同或相似的方案。技术实现要素:有鉴于此,本发明的目的在于提供一种可重构系统的构建方法和构建装置。本发明的一方面,提供一种可重构系统的构建方法,包括:接收由需求参数表征的任务需求信息;查询由多个节点形成的决策树,每个节点代表需求参数与重构方案的映射关系,不包含孩子节点的节点为叶子节点,所述重构方案为将计算资源形 成计算系统的方案;选择一个满足条件的叶子节点,确定其对应重构方案为目标方案,所述满足条件包括:该叶子节点中的需求参数与所接收的需求参数相匹配;应执行重构操作的指示,依据所述目标方案,将指定的计算资源构建成计算系统。从上述技术方案可以看出,本发明提供的方案利用需求参数表征任务需求,通过查询预先设置的决策树,从中选出与需求参数对应的重构方案,并依据所述重构方案对指定的计算资源进行控制,形成针对所述任务需求的计算系统。本方案能够从多种实现方式中选择一种能够满足实际任务需求的方案,此过程中无需过多人工参与,具有智能化特点,并且通过参数表征任务需求的方式巧妙、容易实现且准确性高。优选的,上述方法还包括:按照预设策略采集计算资源数据,以确定所述计算资源的负载状态;所述满足条件还包括:所选的叶子节点对应的重构方案所指定的计算资源的负载状态符合预设要求。优选的,上述方法中,在构建成系统后,还包括:依据预设的评估策略进行构建结果评估。优选的,上述方法中,所述计算资源信息包括计算资源的IP地址、标识ID及用于表示计算资源功能的功能标记。优选的,上述方法中,所述计算资源为科学计算组件,所述科学计算组件为硬件组件、软件组件或两者的组合。本发明的另一方面,提供一种可重构系统的构建装置,包括:用于进行人机交互的通信接口;控制单元,用于根据所述通信接口所接收的由需求参数表征的任务需求信息,查询由多个节点形成的决策树,每个节点代表需求参数与重构方案的映射关系,不包含孩子节点的节点为叶子节点,所述重构方案为将计算资源形成计算系统的方案;以及,选择一个满足条件的叶子节点,确定其对应重构方案为目标方案,所述满足条件包括:该叶子节点中的需求参数与所接收 的需求参数相匹配;重构单元,应执行重构操作的指示,依据所述目标方案,将指定的计算资源构建成计算系统。优选的,上述构建装置还可以包括负载状态检测单元,用于按照预设策略采集计算资源数据,以确定所述计算资源的负载状态;所述满足条件还包括:所选的叶子节点对应的重构方案所指定的计算资源的负载状态符合预设要求。优选的,上述构建装置还可以包括评估单元,用于依据预设的评估策略进行构建结果评估。优选的,上述构建装置中,所述计算资源信息包括计算资源的IP地址、标识ID及用于表示计算资源功能的功能标记。优选的,上述构建装置中,所述计算资源为科学计算组件,所述科学计算组件为硬件组件、软件组件或两者的组合。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1示意性地示出了根据本发明实施方式在实际应用中的一个应用场景的框架示意图;图2示意性地示出了根据本发明方法一实施方式的流程图;图3示意性地示出了决策树的一种可能结构;图4示意性地示出了根据本发明方法另一实施方式的流程图;图5示意性地示出了根据本发明方法另一实施方式的流程图;图6示意性地示出了本发明装置一实施例方式的结构示意图;图7示意性地示出了本发明装置另一实施例方式的结构示意图;图8示意性地示出了本发明装置又一实施例方式的结构示意图;图9示意性地示出了本发明装置的一种应用实例。具体实施方式下面将参照本发明实施方式的方法的流程图和设备(或系统)的框图描述本发明的实施方式。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。根据本发明的实施方式,提出了一种可重构系统的构建方法和装置。附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。为了方便技术人员理解,下面先对PRCA进行简单介绍:2012年10月10日,一种新概念高效能计算机体系―基于认知的主动重构计算体系(简称为PRCA)被发布。PRCA与普通计算体系相比,以下方面存在较大区别:一、通信方式,PRCA的硬件程序运行在专用的FPGA服务器上,软件程序运行在通用服务器上。发明人经过研究发现,在PRCA平台中,两类服务器之 间最方便的连接方式是千兆以太网,即千兆以太网被选定作为软硬件程序间的通信方式。这与采用PCI接口、PLB总线、InfiniBand作为通信方式的其他可重构系统明显不同。相应的,通信方式不同,软硬件程序就会有很大差异。二、硬件结构,FPGA与相关外设的连接方式在不同的计算平台下总是存在一些差异。单就FPGA与内存的连接而言,可能存在的差异包括:内存的种类(DDR2或DDR3)、容量(2G或32G)、管脚接口类型。具体例如:PRCA平台为每个FPGA配备3条8GBDDR3内存,接口为204针。作为对比,另一种BEE3型可重构计算机为每个FPGA配备2条4GBDDR2内存,接口也为204针。下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。发明概述发明人在研究过程中,提供了从多种重构方式中选择一种能够满足应用需求的方式的一种方案,该方案能够识别应用需求,并依据应用需求选择重构方式,此过程中无需过多人工参与,具有智能化特点。在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。应用场景总览参考图1,为本发明实施方式的一个示例性应用场景的框架示意图。其中,用户通过输入输出设备11与计算机12交互。本领域技术人员可以理解,图1所示的框架示意图仅是本发明的实施方式可以在其中得以实现的一个示例。本发明实施方式的适用范围不受到该框架任何方面的限制。所述输入输出设备11可以是键盘和显示器的组合,也可以是触摸屏或者其他具有输入输出功能的设备。在图1所示的示例性应用场景中,计算机12响应于用户输入的数据,进行相应操作,包括调用内部计算或处理模块对指定的程序或数据进行处理。示例性方法下面结合图1的应用场景,参考图2来描述根据本发明示例性实施方式的构建方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。参考图2所示,为本发明提供的可重构系统的构建方法一实施方式的流程图,本实施方式可以包括以下步骤:步骤S21、接收由需求参数表征的任务需求信息。所述任务需求信息可以由操作者通过操作界面上的信息输入栏,或者由操作者通过操作界面上的各种需求参数的勾选结果输入。步骤S22、查询由多个节点形成的决策树。所述决策树每个节点代表需求参数与决策(也可称为重构方案)的映射关系,不包含孩子节点的节点为叶子节点,所述决策包括计算资源信息和将计算资源形成重构系统的方法的标识。请参考图3,为所述决策树的一种示例结构,所述决策树可以认为是由一个或多个节点组成的有限集合T={T1,T2,T3,…Tm},其中有一个根节点(Root),其余节点可分为m(m≥0)个互不相交的有限集T1,T2,T3,…Tm。树中每个节点均表示一种任务需求参数和重构方案之间的一种映射关系,不同的任务需求参数对应不同的重构方案,每个重构方案包括计算资源标识及将这些计算资源标识代表的计算资源构建成系统的构建方法。决策树中,节点越靠近根节点,则其对应的重构方案的抽象程度越高,没有下一层次节点的节点为叶子节点。例如图中的T2节点,对应较为抽象的重构方案,该抽象的重构方案下有三种较为具体的重构方案T4、T5和T6节点对应的方案。步骤S23、选择一个满足条件的叶子节点,确定其中的重构方案为目标方案。本步骤目的在于选出满足条件的较为具体的方案。所述满足条件包括:该叶子节点中的需求参数与所接收的需求参数相匹配。所述相匹配可以是相同,或者叶子节点中的需求参数包含所接受的需求参数。步骤S24、应执行重构操作的指示,依据所述目标方案构建系统。接收到操作者发送的指示(可以是通过鼠标、键盘、触摸屏或者其他输入部件输入执行操作的命令)后,依据所述目标方案构建系统,即将计算资源信息对应的计算资源,按照方案的指示,构建成针对所述任务需求信息的系统。一种优选的实施例可以在图2所示实施例的基础上,检测各个计算资源的负载状态,然后在选择一个满足条件的叶子节点时,参考所涉及计算资源的负载状态。具体流程如图4所示,包括以下步骤:步骤S41~步骤S42、与图2中的步骤S21~步骤S22内容基本相同。步骤S43、按照预设策略采集各个计算资源的状态数据。本实例中,步骤S43可以与步骤S41~步骤S42并行,或者以任意顺序进行。步骤S44、选择一个满足条件的叶子节点,确定其中的重构方案为目标方案。所述满足条件包括:A、该叶子节点中的需求参数与所接收的需求参数相匹配。所述相匹配可以是相同,或者叶子节点中的需求参数包含所接受的需求参数。B、所选的叶子节点对应的重构方案所指定的计算资源的负载状态符合预设要求。例如负载小于60%。步骤S45与步骤S24的内容基本相同。图5为另一种优选实施例,该实施例在计算系统构建完成之后,对构建结果进行评估,即评估构建的计算系统是否满足要求。具体流程包括以下步骤:步骤S51~步骤S55,与前文步骤S41~步骤S45内容基本相同。步骤S56、依据预设的评估策略进行构建结果评估。所述预设策略可以是加权平均的策略。例如,存在两个可行的构建方案:方案1和方案2,这两个方案均有两个属性:性能(x)与功耗(y)。则加权平均的方式如下:a1a2b1b2]]>其中:a1表示方案1对于性能的主观偏好,b1为方案1对功耗的主观偏好,a2表示方案2对于性能的主观偏好,b2为方案2对功耗的主观偏好。则,对于方案1的效益评估结果为a1×x+b1×y。上述各个实施例中,每个叶子节点中的重构方案包括计算资源信息和用于将计算资源进行重构的方法的标识,所述计算资源信息包括计算资源的IP地址、标识ID及用于表示计算资源功能的功能标记。在进行重构时,根据方法的标识找到方法,并依据计算资源的IP地址找到计算资源,然后按照所述方法对计算资源进行控制,以形成所需的计算系统。所述计算资源为科学计算组件,该科学计算组件可以是FPGA或软件组件或两者的组合,即可以纯硬件、纯软件或软硬件组合。示例性设备在介绍了本发明示例性实施方式的方法之后,接下来,参考图6所示,为本发明示例性实施方式的构建装置一实施方式,本实施方式例如具体可以包括通信接口61、控制单元62和重构单元63,其中:所述通信接口61用于进行人机交互。所述控制单元62,用于根据所述通信接口61所接收的由需求参数表征的任务需求信息,查询由多个节点形成的决策树,每个节点代表需求参数与重构方案的映射关系,不包含孩子节点的节点为叶子节点,所述重构方案为将计算资源形成计算系统的方案;以及,选择一个满足条件的叶子节点,确定其对应重构方案为目标方案,所述满足条件包括:该叶子节点中的需求参数与所接收的需求参数相匹配。所述重构单元63,应执行重构操作的指示,依据所述目标方案,将指定的计算资源构建成计算系统。计算资源可以集中存储,形成计算资源库,也可以仅是标识的集合(各种计算资源分散存储),控制单元62可以通过选定标识确定计算资源。图7为构建装置的另一个实施方式,在图6的基础上,进一步包括还包括负载状态检测单元64,用于按照预设策略采集计算资源数据,以确定所述计算资源的负载状态;所述满足条件还包括:所选的叶子节点对应的重构方案所指定的计算资源的负载状态符合预设要求。图8为构建装置的又一种实施方式,该实施方式中,在图7的基础上,还包括评估单元65,用于依据预设的评估策略进行构建结果评估。上述各个实施例中,所述计算资源信息包括计算资源的IP地址、标识ID及用于表示计算资源功能的功能标记。所述计算资源为科学计算组件,所述科学计算组件为硬件组件、软件组件或两者的组合。图9示出了本构建装置的一种应用实例,可重构资源为FPGA资源,具体包括多片VIRTEX-6芯片,所述VIRTEX-6芯片是赛灵思公司(Xilinx,Inc.)推出采用40nm工艺制造的高性能现场可编程门阵列(FPGA)产品。本构建装置接收操作者通过计算机或者其他设备发送的任务需求信息,查询由多个节点形成的决策树,选择一个满足条件的叶子节点,确定其对应重构方案为目标方案(例如涉及的FPGA资源为91和93),依据所述目标方案,将指定的计算资源(即91和93)构建成计算系统。需要说明的是,本说明书中各个实施例可相互补充,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。另外,还需要说明的是,本说明书中构建装置与构建方法是相对应的,相互之间可以互相借鉴和补充,例如,上述构建装置中各单元的具体工作过程,例如通信接口的工作过程,控制单元的工作过程,构建单元的工作过程,及负载状态检测单元和评估单元工作过程,均可参照前文构建方法部分的内容。另外,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下, 由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1