数据处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:21453669 阅读:50 留言:0更新日期:2019-06-26 04:41
本申请实施例提供了一种数据处理方法、装置、电子设备及存储介质,该方法包括:在接收到目标客户端的数据处理请求后,为目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过目标应用计算资源,对目标客户端的数据处理请求进行预处理,得到目标预处理数据;通过GPU对目标预处理数据进行处理,得到目标处理结果。将CPU逻辑划分为多个应用计算资源,不同应用计算资源处理不同客户端的数据处理请求,实现了不同客户端的数据处理请求的并行处理。CPU与GPU的程序进行并行化,隐藏了CPU的计算时间,消除GPU的闲置时间,增加GPU的有效计算的时间占比,提高了整体的推理服务的性能。

【技术实现步骤摘要】
数据处理方法、装置、电子设备及存储介质
本申请涉及计算机
,特别是数据处理方法、装置、电子设备及存储介质。
技术介绍
随着机器学习技术的快速发展,深度学习技术在越来越多的业务场景中扮演了不可替代的角色。深度学习的计算量较大,随着需求量的增长,使用擅长并行计算的GPU(GraphicsProcessingUnit,图形处理器)作为计算设备是目前的主流方案。使用训练好的深度模型进行计算的过程被称为“推理”。为了使模型可以被更灵活的使用,先在一台配备了GPU的机器上启动加载了深度学习模型的程序,再通过客户端向其发送远程请求以获得计算结果,成为了深度学习的推理业务的普遍实现方式。相关技术中,远程服务调用方式为RPC(RemoteProcedureCall,远程过程调用)服务的过程包括:在服务端创建一个加载了深度学习模型的方法,等待客户端发送请求。在客户端上调用服务器中的方法,该方法的返回值即为深度学习的计算结果,服务器与客户端之间通过远程协议实现通信具体可以如图1所示。服务器在处理请求时(即深度学习的推理时),第一步是对原始数据进行Pre-process(预处理),第二步将预处理好的数据输入模型进行Inference(推理计算),推理计算的速度决定了深度学习的性能。服务器中的特定方法接收到客户端发送来的原始数据后,先在CPU(CentralProcessingUnit,中央处理器)上进行预处理,再将处理好的数据拷贝到GPU的存储器中,由GPU读取并进行计算,计算完成后将结果拷贝回CPU,再返回给客户端完成服务。然而在上述方法中,当一个客户端向服务器发起请求后,服务器即被该客户端所占用,在返回响应之前无法处理其他客户端的请求。由于数据的接收机发送均需要占用时间,使得服务器的CPU及GPU出现闲置,当客户端数量庞大时,服务器按顺序处理每个客户端的请求,处理效率低。
技术实现思路
本申请实施例的目的在于提供一种数据处理方法、装置、电子设备及存储介质,以实现增加服务器的数据处理效率。具体技术方案如下:第一方面,本申请实施例提供了一种数据处理方法,应用于服务器,所述服务器包括中央处理器CPU及图形处理器GPU,所述CPU被逻辑划分为多个应用计算资源,每个所述应用计算资源包括至少一个进程或线程,所述方法包括:在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果。可选的,在所述通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据之后,所述方法还包括:将所述目标预处理数据存储到指定内存空间中;利用所述GPU从所述指定内存空间中读取所述目标预处理数据。可选的,所述利用所述GPU从所述指定内存空间中读取所述目标预处理数据,包括:所述GPU获取所述目标预处理数据在所述指定内存空间中的相应指针;所述GPU按照所述相应指针,从所述指定内存空间中读取所述目标预处理数据。可选的,所述GPU被逻辑划分为单个或多个计算进程,所述方法还包括:在所述GPU的计算进程中确定用于处理所述目标预处理数据的目标计算进程;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果,包括:通过所述目标计算进程对所述目标预处理数据进行处理,得到所述目标处理结果。可选的,在所述通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果之后,所述方法还包括:将所述目标处理结果加入到所述目标客户端的返回消息队列中。第二方面,本申请实施例提供了一种数据处理装置,位于服务器,所述服务器包括中央处理器CPU及图形处理器GPU,所述CPU被逻辑划分为多个应用计算资源,每个所述应用计算资源包括至少一个进程或线程,所述装置包括:应用计算资源配置模块,被配置为在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;CPU处理模块,被配置为通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;GPU处理模块,被配置为通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果。可选的,本申请实施例的数据处理装置还包括:数据存储模块,被配置为将所述目标预处理数据存储到指定内存空间中;数据读取模块,被配置为利用所述GPU从所述指定内存空间中读取所述目标预处理数据。可选的,所述数据读取模块,包括:指针获取子模块,被配置为通过所述GPU获取所述目标预处理数据在所述指定内存空间中的相应指针;数据获取子模块,被配置为通过所述GPU按照所述相应指针,从所述指定内存空间中读取所述目标预处理数据。可选的,所述GPU被逻辑划分为单个或多个计算进程,所述装置还包括:计算进程分配模块,被配置为在所述GPU的计算进程中确定用于处理所述目标预处理数据的目标计算进程;所述GPU处理模块,具体用于:通过所述目标计算进程对所述目标预处理数据进行处理,得到所述目标处理结果。可选的,本申请实施例的数据处理装置还包括:结果返回准备模块,被配置为将所述目标处理结果加入到所述目标客户端的返回消息队列中。第三方面,本申请实施例提供了一种电子设备,包括:CPU与GPU;用于存储CPU与GPU可执行指令的存储器;其中,所述CPU被逻辑划分为多个应用计算资源,每个所述应用计算资源包括至少一个进程或线程,所述CPU被配置为:在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;所述GPU被配置为:对所述目标预处理数据进行处理,得到目标处理结果。可选的,所述CPU还可以执行:将所述目标预处理数据存储到指定内存空间中;所述GPU还可以执行:从所述指定内存空间中读取所述目标预处理数据。可选的,所述GPU从所述指定内存空间中读取所述目标预处理数据,包括:所述GPU获取所述目标预处理数据在所述指定内存空间中的相应指针;所述GPU按照所述相应指针,从所述指定内存空间中读取所述目标预处理数据。可选的,所述GPU被逻辑划分为单个或多个计算进程,所GPU还可以执行:在所述GPU的计算进程中确定用于处理所述目标预处理数据的目标计算进程;所述GPU具体用于执行:通过所述目标计算进程对所述目标预处理数据进行处理,得到目标处理结果。可选的,所述GPU还可以执行:将所述目标处理结果加入到所述目标客户端的返回消息队列中。第四方面,本申请实施例提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的CPU与GPU执行时,使得服务器能够执行一种数据处理方法,所述方法包括:在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果。可选的,在所述本文档来自技高网
...

【技术保护点】
1.一种数据处理方法,其特征在于,应用于服务器,所述服务器包括中央处理器CPU及图形处理器GPU,所述CPU被逻辑划分为多个应用计算资源,每个所述应用计算资源包括至少一个进程或线程,所述方法包括:在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果。

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于服务器,所述服务器包括中央处理器CPU及图形处理器GPU,所述CPU被逻辑划分为多个应用计算资源,每个所述应用计算资源包括至少一个进程或线程,所述方法包括:在接收到目标客户端的数据处理请求后,为所述目标客户端分配目标应用计算资源,其中,同一时刻不同客户端的应用计算资源不同;通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果。2.根据权利要求1所述的方法,其特征在于,在所述通过所述目标应用计算资源,对所述目标客户端的数据处理请求进行预处理,得到目标预处理数据之后,所述方法还包括:将所述目标预处理数据存储到指定内存空间中;利用所述GPU从所述指定内存空间中读取所述目标预处理数据。3.根据权利要求2所述的方法,其特征在于,所述利用所述GPU从所述指定内存空间中读取所述目标预处理数据,包括:所述GPU获取所述目标预处理数据在所述指定内存空间中的相应指针;所述GPU按照所述相应指针,从所述指定内存空间中读取所述目标预处理数据。4.根据权利要求1所述的方法,其特征在于,所述GPU被逻辑划分为单个或多个计算进程,所述方法还包括:在所述GPU的计算进程中确定用于处理所述目标预处理数据的目标计算进程;通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果,包括:通过所述目标计算进程对所述目标预处理数据进行处理,得到所述目标处理结果。5.根据权利要求1所述的方法,其特征在于,在所述通过所述GPU对所述目标预处理数据进行处理,得到目标处理结果之后,所述方法还包括:将所述目标处理结果加入到所述目标客户端的返回消息队列中。6.一种数据处理装置,其特征在于,位于服务器,所述服务器包括中央处...

【专利技术属性】
技术研发人员:曹效伦
申请(专利权)人:北京达佳互联信息技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1