计算任务的处理方法及装置的制造方法_2

文档序号:8472761阅读:来源:国知局
务进行计算,并将计算结果反馈至客户端,即利用远程虚拟众核设备进行高性能计算的用户在客户端通过虚拟通用计算API向服务器端申请虚拟众核资源、实现高性能计算实例;服务器端则根据客户端的申请分配和调整众核资源,为用户分配虚拟众核资源,并执行客户端虚拟通用计算API相应的高性能计算API向众核设备提交计算任务进行计算;最终将计算结果反馈给用户,由此解决了相关技术中的计算实例必须依赖物理实体设备而无法实现对众核设备的虚拟化的问题,进而摆脱了对物理实体设备的依赖,实现了对众核设备的虚拟化,同时也为服务器端众核资源的维护提供了便利。
【附图说明】
[0022]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0023]图1是根据相关技术的CPU+众核异构模式的示意图;
[0024]图2是根据本发明实施例的计算任务的处理方法的流程图;
[0025]图3是根据本发明实施例的计算任务的处理装置的结构框图;
[0026]图4是根据本发明优选实施例的计算任务的处理装置的结构框图;
[0027]图5是根据本发明优选实施例的使用远程虚拟众核设备进行高性能计算的系统结构示意图。
【具体实施方式】
[0028]下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0029]图2是根据本发明实施例的计算任务的处理方法的流程图。如图2所示,该方法可以包括以下处理步骤:
[0030]步骤S202:根据客户端经由虚拟通用计算API发送的获取虚拟众核资源的请求为客户端分配虚拟众核资源;
[0031]步骤S204:响应客户端经由虚拟通用计算API发送的对虚拟众核资源进行初始化的请求,对虚拟众核资源执行初始化操作;
[0032]步骤S206:接收客户端经由虚拟通用计算API发送的计算任务,在经过初始化处理后的虚拟众核资源上对计算任务进行计算,并将计算结果反馈至客户端。
[0033]相关技术中的计算实例必须依赖物理实体设备而无法实现对众核设备的虚拟化。采用如图2所示的方法,利用远程虚拟众核设备进行高性能计算的用户在客户端通过虚拟通用计算API向服务器端申请虚拟众核资源、实现高性能计算实例;服务器端则根据客户端的申请分配和调整众核资源,为用户分配虚拟众核资源,并执行客户端虚拟通用计算API相应的高性能计算API向众核设备提交计算任务进行计算;最终将计算结果反馈给用户,由此解决了相关技术中的计算实例必须依赖物理实体设备而无法实现对众核设备的虚拟化的问题,进而摆脱了对物理实体设备的依赖,实现了对众核设备的虚拟化,同时也为服务器端众核资源的维护提供了便利。
[0034]需要说明的是,虚拟通用计算API不再向用户呈现物理信息,而只有性能参数差异,整个过程中用户只需要根据通过虚拟通用计算API获取的虚拟众核设备的性能参数进行用例实现,而众核设备相关的管理操作完全由服务器端屏蔽。
[0035]优选地,在步骤S202中,根据客户端经由虚拟通用计算API发送的获取虚拟众核资源的请求为客户端分配虚拟众核资源可以包括以下操作:
[0036]步骤S1:接收来自于客户端的申请虚拟众核资源的注册请求消息,其中,注册请求消息中携带有待获取的虚拟众核资源的一项或多项性能指标;
[0037]步骤S2:根据注册请求消息以及当前可供使用的全部虚拟众核资源的分配情况为客户端分配虚拟众核资源,并向客户端反馈应答消息,其中,应答消息中携带有与一项或多项性能指标相关的虚拟众核资源的属性信息。
[0038]在优选实施例中,需要启动服务器端,同时启动众核设备,然后由服务器端对可供使用的众核资源进行统计。另外,还需要启动客户端,客户端应用通过虚拟通用计算API向服务器端申请虚拟计算资源(即向服务器端发起注册请求),其中,该申请虚拟计算资源的请求中携带有所需众核资源的性能指标,例如:是否需要支持双精度浮点计算、计算性能指标、工作项大小或者工作组大小等属性。服务器端接收到该客户端发送的注册请求消息,根据当前的众核资源分配情况确定为客户端分配的众核资源,然后向客户端返回应答消息,其中,该应答消息中携带有服务器端反馈的与所需众核资源的性能指标对应的虚拟众核属性信息。
[0039]优选地,在步骤S204中,响应客户端发送的对虚拟众核资源进行初始化的请求,对虚拟众核资源执行初始化操作可以包括以下步骤:
[0040]步骤S3:响应客户端经由虚拟通用计算API发送的对虚拟众核资源执行的初始化请求,其中,初始化请求是由客户端根据获取到的属性信息来决定的;
[0041]步骤S4:将初始化请求分配至与虚拟众核资源对应的服务进程,由服务进程对初始化请求进行合法性检查,并在通过检查后对虚拟众核资源进行初始化。
[0042]在优选实施例中,客户端应用通过虚拟通用计算API初始化虚拟众核计算平台,按照申请虚拟众核设备时获取到的虚拟众核设备的属性信息对相应的虚拟众核设备进行初始化,其中,初始化操作可以包括:需要初始化的虚拟众核设备以及该虚拟众核设备需要创建的队列数量以及队列属性等信息。服务器端接收到客户端发送的初始化请求消息,然后将客户请求分发至对应的服务进程进行处理。服务进程在对客户请求进行解析后,根据客户端申请成功的虚拟众核资源表进行相关操作的合法性检查。在检查通过后,执行对应的通用计算API,将客户请求分解后调用OpenCL API对指定的虚拟众核进行初始化,完成对实际的众核的平台层操作,并将操作结果返回给客户端,如果客户端相关操作的参数超出了所申请的资源,则返回客户端相关错误信息,不执行其所请求的操作。
[0043]优选地,在步骤S206中,接收计算任务,对计算任务进行计算可以包括以下操作:
[0044]步骤S5:接收来自于客户端的计算请求,其中,计算请求中携带有计算任务;
[0045]步骤S6:将接收到的计算请求分发至服务进程,并采用服务进程从计算请求中解析出计算任务;
[0046]步骤S7:将计算任务提交至虚拟众核资源,对计算任务进行计算。
[0047]在优选实施例中,在对虚拟众核设备初始化成功后,客户端应用调用通过虚拟通用计算API进行高性能计算的组织,例如:内存对象、程序对象、内核对象的创建工作以及向众核设备提交计算数据,并启动内核进行计算等操作。服务器端接收到客户端发送的计算请求,将该计算请求分发至对应的服务进程进行处理,服务进程在对计算请求进行解析后,执行对应的虚拟计算API,以完成相关操作。
[0048]优选地,在步骤S206中,将计算结果反馈至客户端可以包括以下步骤:
[0049]步骤S8:接收客户端经由虚拟通用计算API发送的获取计算结果的请求消息;
[0050]步骤S9:采用服务进程根据接收到的获取计算结果的请求消息将计算结果返回至客户端。
[0051]在优选实施例中,客户端可以通过虚拟通用计算API获取操作结果,服务器端的服务进程根据客户端的请求将计算结果返回至客户端。
[0052]图3是根据本
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1