CN115686845A - 数据计算加速方法、装置、设备及计算机可读存储介质 - Google Patents
数据计算加速方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115686845A CN115686845A CN202211347659.5A CN202211347659A CN115686845A CN 115686845 A CN115686845 A CN 115686845A CN 202211347659 A CN202211347659 A CN 202211347659A CN 115686845 A CN115686845 A CN 115686845A
- Authority
- CN
- China
- Prior art keywords
- preset function
- data processing
- calculation
- data
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 71
- 230000001133 acceleration Effects 0.000 title claims abstract description 52
- 230000006870 function Effects 0.000 claims abstract description 162
- 238000012545 processing Methods 0.000 claims abstract description 101
- 238000004590 computer program Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 5
- 238000002360 preparation method Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本公开涉及一种数据计算加速方法、装置、设备及计算机可读存储介质,该方法包括:基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;将所述数据处理结果发送至用户侧。本公开将通过软件进行串行化计算的第一预设函数实现在硬件中,相比于用软件进行计算更加快速、高效,且可以在不更改成C/C++语言的情况下,达到数据计算加速的效果,也无需对源数据进行标准化,减少了数据准备时间,同时降低人工与算力成本,极大地提高了数据计算速度。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种数据计算加速方法、装置、设备及计算机可读存储介质。
背景技术
随着大数据的不断发展,数据量的增长以及数据类型的多样化等都对数据处理提出了越来越高的要求,对于数据计算速度的需求也与日俱增。
为了实现计算加速,现有较好的技术是使用软件并行计算,通过对数据进行内存映射及并行计算的方式实现加速。这种方式在具体执行过程中仍需遵循中央处理器(central processing unit,CPU)的串行规则,至多仅能将计算速度提升几倍,仍然无法很好地满足计算加速的需求。
发明内容
为了解决上述技术问题,本公开提供了一种数据计算加速方法、装置、设备及计算机可读存储介质,以提高数据计算速度。
第一方面,本公开实施例提供一种数据计算加速方法,包括:
基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;
响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;
将所述数据处理结果发送至用户侧。
在一些实施例中,所述基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数之前,所述方法还包括:
获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
在一些实施例中,所述基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,包括:
基于第一预设函数的计算逻辑,在硬件设备中通过HLS语言实现第二预设函数。
在一些实施例中,基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数之后,所述方法还包括:
定义所述第二预设函数的调用规则;
所述响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果,包括:
响应于用户侧的数据处理请求,根据所述第二预设函数的调用规则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
在一些实施例中,所述响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果,包括:
确定所述数据处理请求所包含的数据量;
若所述数据量大于或等于第二预设阈值,则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
第二方面,本公开实施例提供一种数据计算加速装置,包括:
实现模块,用于基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;
调用模块,用于响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;
发送模块,用于将所述数据处理结果发送至用户侧。
在一些实施例中,所述装置还包括:
获取模块,用于获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
在一些实施例中,所述装置还包括:
定义模块,用于定义所述第二预设函数的调用规则。
第三方面,本公开实施例提供一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的数据计算加速方法。
本公开实施例提供的数据计算加速方法、装置、设备及计算机可读存储介质,将通过软件进行串行化计算的第一预设函数实现在硬件中,相比于用软件进行计算更加快速、高效,且可以在不更改成C/C++语言的情况下,达到数据计算加速的效果,也无需对源数据进行标准化,减少了数据准备时间,同时降低人工与算力成本,极大地提高了数据计算速度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的数据计算加速方法流程图;
图2为本公开实施例提供的一种应用场景的示意图;
图3为本公开实施例提供的硬件设备连接示意图;
图4为本公开另一实施例提供的数据计算加速方法流程图;
图5为本公开实施例提供的数据计算加速装置的结构示意图;
图6为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
现有技术中,一般使用软件并行计算或者图形处理器(graphics processingunit,GPU)板卡进行数据加速计算。软件并行计算是通过对数据进行内存映射及并行计算的方式进行加速,受限于CPU的串行执行仅可提升至多几倍的计算加速;GPU板卡实现方案是通过GPU自身具有的多个CUDA(Compute Unified Device Architecture)核心进行并行加速,开发人员可以使用C语言来为CUDA架构编写程序,所编写出的程序可以在支持CUDA的处理器上运行,但使用GPU进行计算加速需将输入数据进行标准化,且复杂计算需每次进行数据拷贝,因此延长了数据准备时间,计算加速的效率也有所降低。
另外,还可以先通过Python语言对算法进行验证后,通过将Python语言实现转化成C/C++语言实现计算,达到提升执行效率的目的,但这种方法需要C/C++研发人员完全理解Python研发人员实现的算法逻辑,并进行多次调试达到相应效果,效率较低,同时需要两种编程语言的研发人员,人工成本较高。
针对上述问题,本公开实施例提供了一种数据计算加速方法,下面结合具体的实施例对该方法进行介绍。
图1为本公开实施例提供的数据计算加速方法流程图。该方法可以应用于图2所示的应用场景,该应用场景中包括终端设备21,其上包含应用端业务或算法程序、软件开发工具包(Software Development Kit,SDK)以及FPGA计算加速板卡。其中,终端设备可以是智能手机、掌上电脑、平板电脑、带显示屏的可穿戴设备、台式机、笔记本电脑、一体机、智能家居设备等。可以理解的是,本公开实施例提供的数据计算加速方法还可以应用在其他场景中。
图3为本公开实施例提供的硬件设备连接示意图。如图3所示,图1中的FPGA计算加速板卡通过高速串行计算机扩展总线标准(Peripheral Component Interconnectexpress,PCIe)安装在服务器上,PCIe接口与软件SDK交换数据。外设元间互联标准(Peripheral Component Interconnect,PCI)是一种用于定义局部总线的标准。此标准允许在计算机内安装遵从PCI标准的扩展卡。PCI总线系统要求有一个PCI控制卡,它必须安装在一个PCI插槽内。PCIe是沿用现有的PCI编程概念及信号标准,并且构建了更加高速的串行通信系统标准。
下面结合图2所示的应用场景以及图3所示的硬件设备连接示意图,对图1所示的数据计算加速方法进行介绍,该方法包括的具体步骤如下:
S101、基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同。
第一预设函数即在用户业务或算法程序中需要进行计算加速的函数。首先获取第一预设函数的计算逻辑,在硬件设备中实现相同计算逻辑的第二预设函数。其中第一预设函数与第二预设函数的计算逻辑相同,但第一预设函数与第二预设函数所使用的语言不同。
在一些实施例中,可以将用户业务或算法程序中常用的第一预设函数在硬件设备中使用高层次综合(High Level Synthesis,HLS)语言进行实现。HLS是将C/C++/SystemC编写的软体算法综合成寄存器转换级(Register Transfer Level,RTL)编码,如超高速集成电路硬件描述语言(Very-High-Speed Integrated Circuit Hardware DescriptionLanguage,VHDL)或是硬件描述语言(Hardware Description Language,HDL)等,用以实现软件算法设计的硬件加速和硬件电路设计的抽象级设计以及验证。
在一些实施例中,上述硬件设备可以是如图2或图3所示的FPGA(FieldProgrammable Gate Array)计算加速板卡。FPGA是作为专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)领域中一种半定制电路而出现的一种集成电路,所谓集成电路就是将各种分立元件(比如电阻,二极管,三极管)搭建的电路集成到一块芯片上。FPGA计算加速板卡是针对特定领域和应用的专业板卡,通常以PCIe扩展卡的方式进行部署。板卡上设计有丰富的高速I/O接口与存储资源,用于与软件SDK进行数据交换。
可以理解的是,第一预设函数的数量可以是一个或多个,本公开实施例对此不作限定,其中每个第一预设函数的运算逻辑可以是不同的,将每个第一预设函数分别在硬件设备中实现为一一对应的第二预设函数,使得每个第一预设函数与其对应的第二预设函数的运算逻辑分别相同;本公开实施例仅以其中任意一个第一预设函数为例进行说明,并不作为本公开实施例的限定。
S102、响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
用户向用户侧的应用端业务或算法程序发起业务请求,用户侧的应用端业务或算法程序响应于用户发送的业务请求,形成相应的数据处理请求,通过软件SDK调用硬件设备中的第二预设函数,对数据处理请求进行处理,得到数据处理请求对应的数据处理结果。
具体的,预先在软件SDK中配置可供调用的应用程序编程接口(ApplicationProgrammingInterface,API),通过调用预先配置的API接口实现对硬件设备(如FPGA计算加速板卡)中的第二预设函数,从而实现对数据处理请求进行相应的处理,以得到数据处理结果。
S103、将所述数据处理结果发送至用户侧。
在通过硬件设备计算出数据处理请求对应的数据处理结果后,将数据处理结果返回给软件SDK,由软件SDK将最终的数据处理结果发送给用户侧,具体可以是用户侧的应用端业务或算法程序,达到数据计算加速的目的。
本公开实施例通过基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;将所述数据处理结果发送至用户侧,将通过软件进行串行化计算的第一预设函数实现在硬件中,相比于用软件进行计算更加快速、高效,且可以在不更改成C/C++语言的情况下,达到数据计算加速的效果,也无需对源数据进行标准化,减少了数据准备时间,同时降低人工与算力成本,极大地提高了数据计算速度。
图4为本公开另一实施例提供的数据计算加速方法流程图,如图3所示,该方法包括如下几个步骤:
S401、获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
预先对软件计算过程中各个函数所需的计算时间进行调研,确定用户业务或算法程序中耗时较高的函数作为预设函数。例如,将用户业务或算法程序在计算过程中所需计算时间大于或等于第一预设阈值的各个函数分别作为第一预设函数。
S402、基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同。
可选的,基于第一预设函数的计算逻辑,在硬件设备中通过HLS语言实现第二预设函数。
具体的,S402和S101的实现过程和原理一致,此处不再赘述。
S403、定义所述第二预设函数的调用规则。
预先在软件SDK中配置可供调用的API接口,同时定义第二函数的调用规则。调用规则定义了第一预设函数与第二预设函数的对应关系。由于在应用端业务或算法程序中可能包含一个或多个不同的第一预设函数,当应用端业务或算法程序中包含多个不同的第一预设函数时,每个第一预设函数分别对应硬件设备中的一个计算逻辑相同的第二预设函数,在调用时需要调用与所需第一预设函数对应的特定的第二预设函数,以实现相应的计算逻辑。
S404、判断用户侧的数据处理请求所包含的数据量是否大于或等于第二预设阈值;若是,执行S406;若否,执行S405;
S405、根据所述第二预设函数的调用规则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
S406、调用第一预设函数得到所述数据处理请求对应的数据处理结果。
软件SDK对API接口传入的数据处理请求所包含的数据量进行判断,若数据处理请求所包含的数据量较小,如小于第二预设阈值时,则可以直接使用应用端业务或算法程序中的原始的第一预设函数直接对数据处理请求进行处理;若数据处理请求所包含的数据量较大,如大于或等于第二预设阈值时,则根据预先定义好的第二预设函数的调用规则,调用硬件设备中的第二预设函数对数据处理请求进行处理,得到最终的数据处理结果。
S407、将所述数据处理结果发送至用户侧。
在一些实施例中,用户预先在应用层的业务程序添加软件SDK库函数ysnumpy或yspandas。以ysnumpy为例,在一些业务场景中需要调用库函数numpy中的array函数,且在事先调研中发现该函数在软件中运行时所需的计算时间大于第一预设阈值,则将array函数硬件化,即在FPGA计算加速板卡中使用HLS语言实现array函数,然后与软件SDK定义相关的调用规则,例如在应用层的业务程序添加软件SDK库函数ysnumpy,其中ys-为自定义的函数名标识,用于标识该函数在硬件中实现。当用户侧的数据处理请求中需要使用array函数,例如ysnumpy.array(),软件SDK通过接口接收到数据处理请求,并且其所包含的数据量大于第二预设阈值时,软件SDK判断得出需要由FPGA计算加速板卡执行该计算过程,则调用FPGA硬件化array函数,在FPGA计算加速板卡执行完成后,将得出的数据处理结果返回给软件SDK,最后软件SDK将数据处理结果发送给用户侧,完成数据计算加速。
本公开实施例通过获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值;基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;定义所述第二预设函数的调用规则;当用户侧的数据处理请求所包含的数据量大于或等于第二预设阈值时,根据所述第二预设函数的调用规则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;将所述数据处理结果发送至用户侧,通过对软件计算过程中所使用的函数进行筛选,选取其中计算时间较长的函数在硬件设备中实现,使得数据计算更加快速高效;在硬件中实现数据加速无需进行内存拷贝,执行效率更高,且基于HLS语言实现函数的硬件化,无需对原始数据进行标准化处理,减少了数据准备时间,节省了人工成本,进一步提高了数据计算加速的效果。
图5为本公开实施例提供的数据计算加速装置的结构示意图。该数据计算加速装置可以是如上实施例所述的终端设备,或者该数据计算加速装置可以该终端设备中的部件或组件。本公开实施例提供的数据计算加速装置可以执行数据计算加速方法实施例提供的处理流程,如图5所示,数据计算加速装置50包括:实现模块51、调用模块52、发送模块53;其中,实现模块51用于基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;调用模块52用于响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;发送模块53用于将所述数据处理结果发送至用户侧。
可选的,数据计算加速装置50还包括获取模块54,用于获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
可选的,实现模块51还用于基于第一预设函数的计算逻辑,在硬件设备中通过HLS语言实现第二预设函数。
可选的,数据计算加速装置50还包括定义模块55,用于定义所述第二预设函数的调用规则;调用模块52还用于响应于用户侧的数据处理请求,根据所述第二预设函数的调用规则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
可选的,调用模块52包括确定单元521、处理单元522;确定单元521用于确定所述数据处理请求所包含的数据量;处理单元522用于在所述数据量大于或等于第二预设阈值时,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
图5所示实施例的数据计算加速装置可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6为本公开实施例提供的电子设备的结构示意图。该电子设备可以是如上实施例所述的终端设备。本公开实施例提供的电子设备可以执行数据计算加速方法实施例提供的处理流程,如图6所示,电子设备60包括:存储器61、处理器62、计算机程序和通讯接口63;其中,计算机程序存储在存储器61中,并被配置为由处理器62执行如上所述的数据计算加速方法。
另外,本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的数据计算加速方法。
此外,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的数据计算加速方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数据计算加速方法,其特征在于,所述方法包括:
基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;
响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;
将所述数据处理结果发送至用户侧。
2.根据权利要求1所述的方法,其特征在于,所述基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数之前,所述方法还包括:
获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
3.根据权利要求1所述的方法,其特征在于,所述基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,包括:
基于第一预设函数的计算逻辑,在硬件设备中通过HLS语言实现第二预设函数。
4.根据权利要求1所述的方法,其特征在于,基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数之后,所述方法还包括:
定义所述第二预设函数的调用规则;
所述响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果,包括:
响应于用户侧的数据处理请求,根据所述第二预设函数的调用规则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
5.根据权利要求1所述的方法,其特征在于,所述响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果,包括:
确定所述数据处理请求所包含的数据量;
若所述数据量大于或等于第二预设阈值,则调用所述第二预设函数得到所述数据处理请求对应的数据处理结果。
6.一种数据计算加速装置,其特征在于,包括:
实现模块,用于基于第一预设函数的计算逻辑,在硬件设备中实现第二预设函数,所述第一预设函数与所述第二预设函数的计算逻辑相同;
调用模块,用于响应于用户侧的数据处理请求,调用所述第二预设函数得到所述数据处理请求对应的数据处理结果;
发送模块,用于将所述数据处理结果发送至用户侧。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取第一预设函数,所述第一预设函数在软件计算过程中所需计算时间大于或等于第一预设阈值。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
定义模块,用于定义所述第二预设函数的调用规则。
9.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-5中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347659.5A CN115686845A (zh) | 2022-10-31 | 2022-10-31 | 数据计算加速方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347659.5A CN115686845A (zh) | 2022-10-31 | 2022-10-31 | 数据计算加速方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115686845A true CN115686845A (zh) | 2023-02-03 |
Family
ID=85046102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211347659.5A Pending CN115686845A (zh) | 2022-10-31 | 2022-10-31 | 数据计算加速方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115686845A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441564A (zh) * | 2008-12-04 | 2009-05-27 | 浙江大学 | 为程序定制的可重构加速器实现方法 |
CN106909433A (zh) * | 2017-02-21 | 2017-06-30 | 西北工业大学 | 一种基于Zynq系列FPGA的D‑S证据理论算法加速方法 |
CN114064278A (zh) * | 2021-11-18 | 2022-02-18 | 深圳致星科技有限公司 | 用于联邦学习的异构加速引擎及方法 |
CN114416778A (zh) * | 2022-01-21 | 2022-04-29 | 北京金山云网络技术有限公司 | 一种函数构建方法、装置、电子设备及可读存储介质 |
CN114492781A (zh) * | 2022-04-02 | 2022-05-13 | 苏州浪潮智能科技有限公司 | 一种硬件加速器及数据处理方法、系统、设备、介质 |
-
2022
- 2022-10-31 CN CN202211347659.5A patent/CN115686845A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441564A (zh) * | 2008-12-04 | 2009-05-27 | 浙江大学 | 为程序定制的可重构加速器实现方法 |
CN106909433A (zh) * | 2017-02-21 | 2017-06-30 | 西北工业大学 | 一种基于Zynq系列FPGA的D‑S证据理论算法加速方法 |
CN114064278A (zh) * | 2021-11-18 | 2022-02-18 | 深圳致星科技有限公司 | 用于联邦学习的异构加速引擎及方法 |
CN114416778A (zh) * | 2022-01-21 | 2022-04-29 | 北京金山云网络技术有限公司 | 一种函数构建方法、装置、电子设备及可读存储介质 |
CN114492781A (zh) * | 2022-04-02 | 2022-05-13 | 苏州浪潮智能科技有限公司 | 一种硬件加速器及数据处理方法、系统、设备、介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5500741B2 (ja) | データ処理システムにおける割込承認 | |
CN109922158A (zh) | 基于微服务的数据处理方法、装置、介质及电子设备 | |
CN107203465B (zh) | 系统接口测试方法及装置 | |
CN111797073A (zh) | 数据库管理方法、电子设备与计算机可读存储介质 | |
CN110825436B (zh) | 应用于人工智能芯片的计算方法和人工智能芯片 | |
CN109684008A (zh) | 卡片渲染方法、装置、终端及计算机可读存储介质 | |
CN112632884B (zh) | 门级网表生成方法、装置及电子设备 | |
CN112286594B (zh) | 对象序列化和反序列化方法及设备、电子设备和介质 | |
CN111813407B (zh) | 游戏开发方法、游戏运行方法、装置和电子设备 | |
CN117077599A (zh) | 一种现场可编程逻辑门阵列视图生成方法及装置 | |
CN117193986A (zh) | 一种多线程处理方法、装置、计算机设备及存储介质 | |
CN115809620B (zh) | 仿真逻辑系统设计的方法、电子设备和存储介质 | |
CN115686845A (zh) | 数据计算加速方法、装置、设备及计算机可读存储介质 | |
US8997044B2 (en) | Overriding system attributes and function returns in a software subsystem | |
CN112257359B (zh) | 用于数据波形的调试方法、装置、调试系统以及存储介质 | |
CN111444129B (zh) | Mdb数据传输的方法及终端设备 | |
CN115297169B (zh) | 数据处理方法、装置、电子设备及介质 | |
CN117369951B (zh) | 虚拟机通信方法、装置、存储介质及电子设备 | |
CN112181641B (zh) | 线程处理方法、装置、设备及存储介质 | |
CN113220456B (zh) | 账单数据的处理方法及相关装置 | |
CN112650682B (zh) | 页面测试处理方法、装置、电子设备及可读存储介质 | |
CN113691434B (zh) | 数据传输系统、方法、电子设备及存储介质 | |
CN116204201B (zh) | 业务处理方法和装置 | |
US20240201989A1 (en) | Software-hardware interface protection | |
CN116011397A (zh) | 芯片优化设计方法、芯片、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |