基于3D Xpoint内存的数据处理方法、设备及可读存储介质

文档序号:189979 发布日期:2021-11-02 浏览:40次 >En<

阅读说明:本技术 基于3D Xpoint内存的数据处理方法、设备及可读存储介质 (Data processing method and device based on 3D Xpoint memory and readable storage medium ) 是由 赖振楠 于 2021-07-29 设计创作,主要内容包括:本发明提供了一种基于3D Xpoint内存的数据处理方法、设备及计算机可读存储介质,所述方法包括:主处理器单元从所述3D Xpoint内存的第一存储区获取第一指令并执行,所述第一指令用于使主处理器单元将预设数据写入到所述3D Xpoint内存的第二存储区;协处理器单元通过总线映射器从3D Xpoint内存的第二存储区获取所述预设数据,以及通过总线映射器从3D Xpoint内存的第四存储区获取第二指令并执行,所述第二指令用于使协处理器单元对预设数据进行逻辑运算,并将逻辑运算结果通过总线映射器写入到3D Xpoint内存的第三存储区。本发明可使得协处理器单元的数据处理过程独立于主处理器单元,从而可最大程度发挥主处理器单元和协处理器单元的性能。(The invention provides a data processing method, equipment and a computer readable storage medium based on a 3D Xpoint memory, wherein the method comprises the following steps: the main processor unit obtains a first instruction from a first storage area of the 3D Xpoint memory and executes the first instruction, wherein the first instruction is used for enabling the main processor unit to write preset data into a second storage area of the 3D Xpoint memory; the coprocessor unit obtains the preset data from a second storage area of the 3D Xpoint memory through the bus mapper, and obtains a second instruction from a fourth storage area of the 3D Xpoint memory through the bus mapper and executes the second instruction, wherein the second instruction is used for enabling the coprocessor unit to carry out logic operation on the preset data, and writing a logic operation result into a third storage area of the 3D Xpoint memory through the bus mapper. The invention can make the data processing process of the coprocessor unit independent of the main processor unit, thereby exerting the performance of the main processor unit and the coprocessor unit to the maximum extent.)

基于3D Xpoint内存的数据处理方法、设备及可读存储介质

技术领域

本发明涉及计算机数据处理领域,更具体地说,涉及一种基于3D Xpoint内存的数据处理方法、设备及可读存储介质。

背景技术

傲腾(Optane)内存,即3D Xpoint内存,是美国英特尔公司推出的基于3D Xpoint存储介质的内存。不同于DRAM采用MOSFET-电容作为存储单元,也不同于闪存使用浮栅晶体管作为存储单元,3D Xpoint存储介质是一种全新的存储介质,其使用可变电阻材料作为存储单元,并通过可堆叠的交叉网络访问这些存储单元。

3D XPoint内存作为一种SCM(存储级内存),相比DRAM内存,具备数据持久保存、断电不会丢失的特性;相比传统SSD的NAND Flash,不但读写速度更快,而且还支持字节级访问(因为NAND Flash要求必须按照Page读写,按照几百个Page的Block擦除)。将3D Xpoint内存应用于计算机系统,可在一定程度上改善计算机系统的性能。

在某些计算机系统中,为提高程序执行效率,通常采用协处理器来协助主处理器,对主处理器无法执行或执行效率低下的部分程序进行处理。然而,在该类计算机系统中,协处理器的输出处理由主处理器控制执行,导致无法最大程度发挥主处理器和协处理器的性能。

发明内容

本发明要解决的技术问题在于,针对上述主处理器和协处理器协同的计算机系统中,无法充分发挥主处理器和协处理器性能的问题,提供一种3D Xpoint内存的数据处理方法、设备及存储介质。

本发明解决上述技术问题的技术方案是,提供一种基于3D Xpoint内存的数据处理方法,所述方法包括:

主处理器单元从所述3D Xpoint内存的第一存储区获取第一指令并执行,所述第一指令用于使所述主处理器单元将预设数据写入到所述3D Xpoint内存的第二存储区;

协处理器单元通过总线映射器从所述3D Xpoint内存的第二存储区获取所述预设数据,以及通过所述总线映射器从所述3D Xpoint内存的第四存储区获取第二指令并执行,所述第二指令用于使所述协处理器单元对所述预设数据进行逻辑运算,并将逻辑运算结果通过所述总线映射器写入到所述3D Xpoint内存的第三存储区。

作为本发明的进一步改进,所述方法还包括:

所述主处理器单元从所述3D Xpoint内存的第一存储区获取第三指令并执行,所述第三指令用于使所述主处理器单元读取所述3D Xpoint内存的第三存储区的逻辑运算结果。

作为本发明的进一步改进,所述预设数据为所述主处理器单元从输入装置或网络设备获取的外部输入数据;

所述方法还包括:所述主处理器单元从所述3D Xpoint内存的第一存储区获取第四指令并执行,所述第四指令用于使所述主处理器单元通过输出装置或网络设备输出所述逻辑运算结果。

作为本发明的进一步改进,所述方法还包括:

所述主处理器单元执行输入装置或网络设备输入的第五指令,所述第五指令用于使所述主处理器单元生成新的第二指令并将新的第二指令写入到所述3D Xpoint内存的第四存储区,以替换所述第四存储区的原有的第二指令。

作为本发明的进一步改进,所述方法还包括:

所述主处理器单元从所述3D Xpoint内存获取第五指令并执行,所述第五指令用于使所述主处理器单元生成新的第二指令并将新的第二指令写入到所述3D Xpoint内存的第四存储区,以替换所述第四存储区中原有的第二指令。

作为本发明的进一步改进,所述协处理器单元为图形处理器或嵌入式神经网络处理器,所述第二指令包括所述协处理器单元的操作系统指令和供所述协处理器单元执行的人工智能算法指令。

作为本发明的进一步改进,所述3D Xpoint内存包括DIMM接口,且所述3D Xpoint内存通过DIMM接口插接到主板的DIMM插槽;

所述总线映射器设于所述主板并通过GDDR接口总线与所述DIMM插槽的预设引脚电性连接。

作为本发明的进一步改进,所述主板上设有DRAM接口和GDDR接口,所述DRAM接口与所述DIMM插槽电性连接,所述GDDR接口与所述总线映射器电性连接,且所述主处理器单元安装到所述DRAM接口,所述协处理器单元安装到所述GDDR接口。

本发明还提供一种数据处理设备,包括主处理器、协处理器以及3D Xpoint内存,所述3D Xpoint内存中存储有可在所述主处理器和协处理器中执行的计算机程序,且所述主处理器和协处理器执行所述计算机程序时实现如上所述的基于3D Xpoint内存的数据处理方法的步骤。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上所述的基于3D Xpoint内存的数据处理方法的步骤。

本发明具有以下有益效果:由主处理器单元将预设数据写入到3D Xpoint内存,协处理器单元直接从3D Xpoint内存获取指令及数据,并将处理结果写回到3D Xpoint内存供主处理器单元进一步处理,使得协处理器单元的数据处理过程独立于主处理器单元,从而可最大程度发挥主处理器单元和协处理器单元的性能。

附图说明

图1是本发明实施例提供的基于3D Xpoint内存的数据处理方法的流程示意图;

图2是执行本发明实施例提供的基于3D Xpoint内存的数据处理方法的设备的结构示意图;

图3是本发明实施例提供的基于3D Xpoint内存的数据处理方法中数据流的示意图;

图4是本发明另一实施例提供的基于3D Xpoint内存的数据处理方法的流程示意图;

图5是本发明实施例提供的基于3D Xpoint内存的数据处理设备的示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明的基于3D Xpoint内存的数据处理方法可应用于具有3D Xpoint内存、主处理器单元以及协处理器单元的电子设备,例如个人计算机、服务器、手机、平板等。上述3DXpoint内存具体可包括由3D XPoint内存介质、内存控制器及相关软件共同构成,3DXpoint内存的具体运行过程属于本领域的习知技术,在此不再赘述。

在本发明的一个实施例中,结合图2所示,主处理器单元21通过DRAM接口总线与3DXpoint内存23相连,并可访问3D Xpoint内存23的所有存储空间,协处理器单元22则经由GDDR接口总线及总线映射器24与3D Xpoint内存23相连,通过总线映射器24,协处理器单元22可访问3D Xpoint内存23的部分存储空间。

基于3D Xpoint内存23的大容量的性能,主处理器单元21和无需将大容量存储器(例如SSD、机械硬盘等)上的数据搬移到3D Xpoint内存23,使得主处理器单元21可始终处于高效运行状态,大大提高了计算机系统等电子设备的运行效率。

如图1所示,是本发明实施例提供的基于3D Xpoint内存的数据处理方法的流程示意图,该方法包括:

步骤S11:主处理器单元21从3D Xpoint内存的第一存储区获取第一指令并执行,其中3D Xpoint内存的第一存储区为专用于存储供主处理器单元21执行的指令和数据,例如主处理器单元21的操作系统和算法等。

上述第一指令用于使主处理器单元21将预设数据写入到3D Xpoint内存23的第二存储区。即主处理器单元21在执行第一指令时,将预设数据通过DRAM接口总线写入到3DXpoint内存23的第二存储区。上述第二存储区用于存储供协处理器单元22执行的数据,即第二存储区为主处理器单元21和协处理器单元22的共享存储区。在实际应用中,预设数据可以为通过网络设备接收的数据,通过输入装置输入的数据,或存储于3D Xpoint内存23的第二存储区之外的数据等。

在本发明的一个实施例中,3D Xpoint内存23可根据主处理器单元21的请求,反馈对应的数据和指令,即3D Xpoint内存23在接收到主处理器单元21的读写请求时,获取与读写请求对应的数据或指令并将该读写请求对应的数据或指令通过DRAM接口总线发送给主处理器单元21,以及将主处理器单元21的执行结果写入到3D Xpoint内存介质。上述操作过程与现有的处理器与3D Xpoint内存的数据交互过程相同,在此不再赘述。

步骤S12:协处理器单元22通过总线映射器24从3D Xpoint内存的第二存储区获取预设数据(该预设数据由主处理器单元21写入到3D Xpoint内存23),以及通过总线映射器24从3D Xpoint内存23的第四存储区获取第二指令并执行。上述第四存储区为专用于存储供协处理器单元22执行的指令和数据,例如协处理器单元22的操作系统或算法等。

上述第二指令用于使协处理器单元22对从第二存储区获取的预设数据进行逻辑运算,并将逻辑运算结果通过总线映射器24写入到3D Xpoint内存23的第三存储区。上述第三存储区用于存储同时供主处理器单元21和协处理器单元22执行的数据,即第三存储区为主处理器单元21和协处理器单元22的共享存储区。

在本发明的一个实施例中,总线映射器24可根据协处理器单元22的请求,从3DXpoint内存23读取并反馈对应的数据和指令,即总线映射器24在接收到协处理器单元22的读写请求时,从3D Xpoint内存23的第四存储区获取与读写请求对应的指令,或从3DXpoint内存23的第二存储区获取对应的数据,并将上述指令或数据通过GDDR接口总线发送给协处理器单元22,以及将协处理器单元22的执行结果写入到3D Xpoint内存23。

上述基于3D Xpoint内存的数据处理方法,由主处理器单元21将预设数据写入到3D Xpoint内存23,协处理器单元22使用直接从3D Xpoint内存23获取的指令对主处理器单元21写入的预设数据进行逻辑运算,并将运算结果写回到3D Xpoint内存23供主处理器单元21进一步处理,使得协处理器单元的22数据处理和主处理器单元的执行流程相互独立,从而可最大程度发挥主处理器单元21和协处理器单元22的性能。

在本发明的一个实施例中,协处理器单元22为图形处理器、嵌入式神经网络处理器或其他类似处理器,而第二指令则包括协处理器单元22的操作系统指令和供协处理器单元22执行的人工智能算法(AI)指令等。在该实施例中,主处理器单元21可将需要执行人工智能算法的原始数据写入到3D Xpoint内存23的共享存储区,协处理器单元22直接从上述共享存储区获取原始数据并执行人工智能算法,再将执行人工智能算法获得的标签数据写回到3D Xpoint内存23的共享存储区供主处理器单元21做进一步处理。

在本发明的另一实施例中,基于3D Xpoint内存的数据处理方法可对外部输入(例如来自网络设备或输入装置)的数据进行逻辑运算(例如AI运算等),此时,结合图3-4所示,该方法包括:

步骤S41:主处理器单元21从3D Xpoint内存的第一存储区获取第一指令并执行,其中3D Xpoint内存的第一存储区为专用于存储供主处理器单元21执行的指令和数据,例如主处理器单元21的操作系统和算法等。

上述第一指令用于使主处理器单元21将来自网络设备或输入装置的数据写入到3D Xpoint内存23的第二存储区。即主处理器单元21在执行第一指令时,将预设数据通过DRAM接口总线写入到3D Xpoint内存23的第二存储区。上述第二存储区用于存储供协处理器单元22执行的数据,即第二存储区为主处理器单元21和协处理器单元22的共享存储区。

步骤S42:协处理器单元22通过总线映射器24从3D Xpoint内存的第二存储区获取数据(该数据由主处理器单元21写入到3D Xpoint内存23),以及通过总线映射器24从3DXpoint内存23的第四存储区获取第二指令并执行。上述第四存储区为专用于存储供协处理器单元22执行的指令和数据,例如协处理器单元22的操作系统或算法等。

上述第二指令用于使协处理器单元22对从第二存储区获取的预设数据进行逻辑运算,并将逻辑运算结果通过总线映射器24写入到3D Xpoint内存23的第三存储区。上述第三存储区用于存储同时供主处理器单元21和协处理器单元22执行的数据,即第三存储区为主处理器单元21和协处理器单元22的共享存储区。

步骤S43:主处理器单元21通过DRAM接口总线从3D Xpoint内存23的第一存储区获取第三指令并执行,该第三指令用于使主处理器单元21读取3D Xpoint内存的第三存储区的逻辑运算结果,即主处理器单元21在执行第三指令时,通过DRAM接口总线从3D Xpoint内存23的第三存储区获取由协处理器单元22写入的逻辑运算结果。

步骤S44:主处理器单元21通过DRAM接口总线从3D Xpoint内存23的第一存储区获取第四指令并执行,该第四指令用于使主处理器单元21通过输出装置或网络设备输出逻辑运算结果,即主处理器单元21在执行第四指令时,将步骤S43获得的逻辑运算结果输出。

上述基于3D Xpoint内存的数据处理方法可应用于网络数据处理,例如云计算等,通过主处理器单元21和协处理器单元22的配合,主处理器单元21和协处理器单元22各自发挥最大性能,实现高效的网络数据处理。

在本发明的一个实施例中,当协处理器单元22的逻辑运算方法需要更新(例如出现更优的逻辑运算方法)时,可通过以下方式对协处理器22的逻辑运算方法进行更新:

主处理器单元21执行输入装置或网络设备输入的第五指令,该第五指令用于使主处理器单元21生成新的第二指令并通过DRAM接口总线将新的第二指令写入到3D Xpoint内存23的第四存储区替换第四存储区的原有的第二指令。

此外,当协处理器单元22的逻辑运算方法需要切换(例如在主处理器单元21的主程序中,需要从图像切割算法的加速运算切换到图像识别算法的加速运算)时,可通过以下方式对协处理器22的逻辑运算方法进行更新:

主处理器单元21执行从3D Xpoint内存23的第一存储区获取的第五指令,该第五指令用于使主处理器单元21生成新的第二指令并通过DRAM接口总线将新的第二指令写入到3D Xpoint内存23的第四存储区替换第四存储区的原有的第二指令。

在主处理器单元21执行第五指令之前,即执行第二指令替换操作之前,主处理器单元21可生成指令,使协处理器单元22停止运行;在第二指令替换操作完成之后,主处理器单元21可生成另一指令,使协处理器单元22重启,然后使用新的逻辑运算方法对主处理器单元21存入3D Xpoint内存23的第二存储区的数据进行处理。

结合图5所示,本发明还提供一种数据处理设备,该数据处理设备5包括主处理器51、协处理器52以及3D Xpoint内存53,上述3D Xpoint内存53中存储有可在主处理器51和协处理器52中执行的计算机程序,且所述主处理器51和协处理器52执行所述计算机程序时实现如上所述的基于3D Xpoint内存的数据处理方法的步骤。

本实施例中的数据处理设备与上述图1-4对应实施例中的基于3D Xpoint内存的数据处理方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。

本发明的一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上所述的基于3DXpoint内存的数据处理方法。

本实施例中的计算机可读存储介质与上述图1-4对应实施例中的基于3D Xpoint内存的数据处理方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的基于3D Xpoint内存的数据处理方法及设备,可以通过其它的方式实现。

本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或界面切换设备、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。

上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种支持可变长向量处理的可配置处理器及其实现方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!