CN113703835A - 一种基于多核处理器的高速数据流处理方法和系统 - Google Patents
一种基于多核处理器的高速数据流处理方法和系统 Download PDFInfo
- Publication number
- CN113703835A CN113703835A CN202110921814.9A CN202110921814A CN113703835A CN 113703835 A CN113703835 A CN 113703835A CN 202110921814 A CN202110921814 A CN 202110921814A CN 113703835 A CN113703835 A CN 113703835A
- Authority
- CN
- China
- Prior art keywords
- instruction
- processor
- data
- register
- core processor
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 230000015654 memory Effects 0.000 claims abstract description 169
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 12
- 230000008901 benefit Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30047—Prefetch instructions; cache control instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种基于多核处理器的高速数据流处理方法和系统。其中,所述方法包括:为多核处理器中的每个处理器配置数据缓存存储器,和为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,和在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,以及根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令。通过上述方式,能够实现提高多核处理器整体的运行计算效能和效率。
Description
技术领域
本发明涉及数据流处理技术领域,尤其涉及一种基于多核处理器的高速数据流处理方法和系统。
背景技术
相关技术中,大家对处理器的性能要求越来越高,但是受限于物理材料的特性和量子效应,处理的频率并不能无限制的提高,处理器大部分最高频率被限制在5GHZ(千兆赫兹)的频率以下,常规的在2-3GHZ的频率,是一个最经济的成本和性能,已经对散热系统的要求的一个很好平衡点。
为了解决性能瓶颈的问题,大家不约而同的想到多核并行计算的方案,并为此开发了从硬件平台,到操作系统,到应用APP(Application,应用程序)的等一系列的全链条的优化,期望可以最大的限度利用上多核并行的计算能力,取得高性能,同时低成本的方案;多核并行系统看起来是很有效的,近乎于完美的解决算力不足的问题的良方;但是同时,人们也发现新的多核并行系统中,还存在一个比较严重的瓶颈,这个瓶颈导致多核系统中,增加更多的处理内核所获得的受益越来越低,甚至到一定的程度,增加更多的处理器,导致多核处理器整体的运行计算效能和效率反而降低了。
这个瓶颈就是多核并行系统的运行内存(RAM),因为我们当前的RAM主要常用的是SRAM(Static Random-Access Memory,静态随机存取存储器)/SDRAM(synchronousdynamic random-access memory,同步动态随机存取器)/DDRRAM(Double Data RateRandom-Access Memory,双倍速率随机存取存储器),它们都有一个共同的特点就是无法支持并行,即在每一个访问周期,只能访问一个特定的地址里面的数据,而无法做到处理器A核访问AA地址,同时处理器B核要访问BB地址,所以最终的多核并行处理系统,到RAM访问这里就变成了串行模式,得不到RAM访问权限的处理器内核只能以空转的方式等待新的RAM访问机会,这样白白的损失了很大一块的系统效能,导致多核处理器整体的运行计算效能和效率反而降低了。
换一种方案,跟处理器采用多核一样,在系统中也采用多个运行内存的方式,让每个处理器都能分到一个单独的运行内存模块单元,这样就相当于一个多系统并机的模式。但是,这个方案就多个运行内存之间的数据交换变为不可能或者效率低下,因为每个处理器内核的运行程序和数据,是需要经常在多核之间流转和共享的,砍掉了共享功能,导致每个子系统各自为政,丧失了多核系统的核心功能,导致多核处理器整体的运行计算效能和效率反而降低了。
发明内容
有鉴于此,本发明的目的在于提出一种基于多核处理器的高速数据流处理方法和系统,能够实现提高多核处理器整体的运行计算效能和效率。
根据本发明的一个方面,提供一种基于多核处理器的高速数据流处理方法,包括:为多核处理器中的每个处理器配置数据缓存存储器;为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器;在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据;根据所述提前通知的所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,通过所述每个处理器添加的指令预取寄存器分别执行对应的指令。
其中,所述为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,包括:根据所需处理的指令的数量和类型,为所述多核处理器中的每个处理器中的指令寄存器添加与所述所需处理的指令的数量和类型相匹配的指令预取寄存器。
其中,所述在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,包括:在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器对指令数据的要求,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
其中,所述在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,包括:在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据所述计算得到的提前时间,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
根据本发明的另一个方面,提供一种基于多核处理器的高速数据流处理系统,包括:配置器、添加器、通知器和执行器;所述配置器,用于为多核处理器中的每个处理器配置数据缓存存储器;所述添加器,用于为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器;所述通知器,用于在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据;所述执行器,用于根据所述提前通知的所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,通过所述每个处理器添加的指令预取寄存器分别执行对应的指令。
其中,所述添加器,具体用于:根据所需处理的指令的数量和类型,为所述多核处理器中的每个处理器中的指令寄存器添加与所述所需处理的指令的数量和类型相匹配的指令预取寄存器。
其中,所述通知器,具体用于:在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器对指令数据的要求,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
其中,所述通知器,具体用于:在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据所述计算得到的提前时间,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
根据本发明的又一个方面,提供一种计算机设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上述任意一项所述的基于多核处理器的高速数据流处理方法。
根据本发明的再一个方面,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述的基于多核处理器的高速数据流处理方法。
可以发现,以上方案,可以为多核处理器中的每个处理器配置数据缓存存储器,和可以为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,和在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,以及根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令,能够实现提高多核处理器整体的运行计算效能和效率。
进一步的,以上方案,可以根据所需处理的指令的数量和类型,为该多核处理器中的每个处理器中的指令寄存器添加与该所需处理的指令的数量和类型相匹配的指令预取寄存器,这样的好处是能够实现方便的在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够实现提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
进一步的,以上方案,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率。
进一步的,以上方案,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据该计算得到的提前时间,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过该计算的提前时间提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明基于多核处理器的高速数据流处理方法一实施例的流程示意图;
图2是本发明基于多核处理器的高速数据流处理系统一实施例的结构示意图;
图3是本发明计算机设备一实施例的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种基于多核处理器的高速数据流处理方法,能够实现提高多核处理器整体的运行计算效能和效率。
请参见图1,图1是本发明基于多核处理器的高速数据流处理方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括如下步骤:
S101:为多核处理器中的每个处理器配置数据缓存存储器。
在本实施例中,可以一次性为多核处理器中的每个处理器配置数据缓存存储器,也可以分多次为多核处理器中的每个处理器配置数据缓存存储器,还可以通过逐个处理器配置方式为多核处理器中的每个处理器配置数据缓存存储器等,本发明不加以限定。
在本实施例中,该为多核处理器中的每个处理器配置数据缓存存储器可以是一个数据缓存存储器,也可以是至少两个数据缓存存储器等,本发明不加以限定。
在本实施例中,该为多核处理器中的每个处理器配置数据缓存存储器可以是相同的数据缓存存储器,也可以是各不相同的数据缓存存储器,还可以是部分相同部分不相同的数据缓存存储器等,本发明不加以限定。
S102:为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器。
其中,该为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,可以包括:
根据所需处理的指令的数量和类型,为该多核处理器中的每个处理器中的指令寄存器添加与该所需处理的指令的数量和类型相匹配的指令预取寄存器,这样的好处是能够实现方便的在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够实现提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
在本实施例中,可以一次性为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,也可以分多次为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,还可以通过逐个处理中的指令寄存器添加的方式为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器等,本发明不加以限定。
在本实施例中,该为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器可以是一个指令预取寄存器,也可以是至少两个指令预取寄存器等,本发明不加以限定。
在本实施例中,该为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器可以是相同的指令预取寄存器,也可以是各不相同的指令预取寄存器,还可以是部分相同部分不相同的指令预取寄存器等,本发明不加以限定。
在本实施例中,该多核处理器中的每个处理器中的指令寄存器可以是一个字长的指令寄存器,也可以是其它字长的指令寄存器等,本发明不加以限定。
S103:在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据。
其中,该在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,可以包括:
在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率。
其中,该在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,可以包括:
在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据该计算得到的提前时间,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过该计算的提前时间提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
S104:根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令。
可以发现,在本实施例中,可以为多核处理器中的每个处理器配置数据缓存存储器,和可以为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,和在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,以及根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令,能够实现提高多核处理器整体的运行计算效能和效率。
进一步的,在本实施例中,可以根据所需处理的指令的数量和类型,为该多核处理器中的每个处理器中的指令寄存器添加与该所需处理的指令的数量和类型相匹配的指令预取寄存器,这样的好处是能够实现方便的在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够实现提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
进一步的,在本实施例中,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率。
进一步的,在本实施例中,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据该计算得到的提前时间,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过该计算的提前时间提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
本发明还提供一种基于多核处理器的高速数据流处理系统,能够实现提高多核处理器整体的运行计算效能和效率。
请参见图2,图2是本发明基于多核处理器的高速数据流处理系统一实施例的结构示意图。本实施例中,该基于多核处理器的高速数据流处理系统20包括配置器21、添加器22、通知器23和执行器24。
该配置器21,用于为多核处理器中的每个处理器配置数据缓存存储器。
该添加器22,用于为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器。
该通知器23,用于在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据。
该执行器24,用于根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令。
可选地,该添加器22,可以具体用于:
根据所需处理的指令的数量和类型,为该多核处理器中的每个处理器中的指令寄存器添加与该所需处理的指令的数量和类型相匹配的指令预取寄存器。
可选地,该通知器23,可以具体用于:
在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据。
可选地,该通知器23,可以具体用于:
在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据该计算得到的提前时间,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据。
该基于多核处理器的高速数据流处理系统20的各个单元模块可分别执行上述方法实施例中对应步骤,故在此不对各单元模块进行赘述,详细请参见以上对应步骤的说明。
本发明又提供一种计算机设备,如图3所示,包括:至少一个处理器31;以及,与至少一个处理器31通信连接的存储器32;其中,存储器32存储有可被至少一个处理器31执行的指令,指令被至少一个处理器31执行,以使至少一个处理器31能够执行上述的基于多核处理器的高速数据流处理方法。
其中,存储器32和处理器31采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器31和存储器32的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器31处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器31。
处理器31负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器32可以被用于存储处理器31在执行操作时所使用的数据。
本发明再提供一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
可以发现,以上方案,可以为多核处理器中的每个处理器配置数据缓存存储器,和可以为该多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,和在该多核处理器中的每个处理器在分别执行一条指令的同时,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,以及根据该提前通知的该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,通过该每个处理器添加的指令预取寄存器分别执行对应的指令,能够实现提高多核处理器整体的运行计算效能和效率。
进一步的,以上方案,可以根据所需处理的指令的数量和类型,为该多核处理器中的每个处理器中的指令寄存器添加与该所需处理的指令的数量和类型相匹配的指令预取寄存器,这样的好处是能够实现方便的在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够实现提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
进一步的,以上方案,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器对指令数据的要求,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率。
进一步的,以上方案,可以在该多核处理器中的每个处理器在分别执行一条指令的同时,根据该添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据该计算得到的提前时间,提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,这样的好处是能够实现通过该计算的提前时间提前通知该配置的数据缓存存储器从主运行内存中获取对应该添加的指令预取寄存器对指令数据的要求的数据,从而无需等待主运行内存的响应,能够提高多核处理器整体的运行计算效能和效率,理想情况下能够达到100%的指令立即执行。
在本发明所提供的几个实施方式中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于多核处理器的高速数据流处理方法,其特征在于,包括:
为多核处理器中的每个处理器配置数据缓存存储器;
为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器;
在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据;
根据所述提前通知的所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,通过所述每个处理器添加的指令预取寄存器分别执行对应的指令。
2.如权利要求1所述的基于多核处理器的高速数据流处理方法,其特征在于,其特征在于,所述为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器,包括:
根据所需处理的指令的数量和类型,为所述多核处理器中的每个处理器中的指令寄存器添加与所述所需处理的指令的数量和类型相匹配的指令预取寄存器。
3.如权利要求1所述的基于多核处理器的高速数据流处理方法,其特征在于,其特征在于,所述在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,包括:
在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器对指令数据的要求,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
4.如权利要求1所述的基于多核处理器的高速数据流处理方法,其特征在于,其特征在于,所述在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,包括:
在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据所述计算得到的提前时间,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
5.一种基于多核处理器的高速数据流处理系统,其特征在于,包括:
配置器、添加器、通知器和执行器;
所述配置器,用于为多核处理器中的每个处理器配置数据缓存存储器;
所述添加器,用于为所述多核处理器中的每个处理器中的指令寄存器添加指令预取寄存器;
所述通知器,用于在所述多核处理器中的每个处理器在分别执行一条指令的同时,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据;
所述执行器,用于根据所述提前通知的所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据,通过所述每个处理器添加的指令预取寄存器分别执行对应的指令。
6.如权利要求5所述的基于多核处理器的高速数据流处理系统,其特征在于,所述添加器,具体用于:
根据所需处理的指令的数量和类型,为所述多核处理器中的每个处理器中的指令寄存器添加与所述所需处理的指令的数量和类型相匹配的指令预取寄存器。
7.如权利要求5所述的基于多核处理器的高速数据流处理系统,其特征在于,所述通知器,具体用于:
在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器对指令数据的要求,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
8.如权利要求5所述的基于多核处理器的高速数据流处理系统,其特征在于,所述通知器,具体用于:
在所述多核处理器中的每个处理器在分别执行一条指令的同时,根据所述添加的指令预取寄存器的数量和待处理的指令的数量,计算提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据的提前时间,和根据所述计算得到的提前时间,提前通知所述配置的数据缓存存储器从主运行内存中获取对应所述添加的指令预取寄存器对指令数据的要求的数据。
9.一种计算机设备,其特征在于,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如权利要求1至4任意一项所述的基于多核处理器的高速数据流处理方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任意一项所述的基于多核处理器的高速数据流处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921814.9A CN113703835B (zh) | 2021-08-11 | 2021-08-11 | 一种基于多核处理器的高速数据流处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921814.9A CN113703835B (zh) | 2021-08-11 | 2021-08-11 | 一种基于多核处理器的高速数据流处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113703835A true CN113703835A (zh) | 2021-11-26 |
CN113703835B CN113703835B (zh) | 2024-03-19 |
Family
ID=78652323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110921814.9A Active CN113703835B (zh) | 2021-08-11 | 2021-08-11 | 一种基于多核处理器的高速数据流处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113703835B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102207916A (zh) * | 2011-05-30 | 2011-10-05 | 西安电子科技大学 | 一种基于指令预取的多核共享存储器控制设备 |
CN102446087A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 指令预取方法与预取装置 |
US20180165204A1 (en) * | 2016-12-12 | 2018-06-14 | Intel Corporation | Programmable Memory Prefetcher |
CN109219805A (zh) * | 2017-05-08 | 2019-01-15 | 华为技术有限公司 | 一种多核系统内存访问方法、相关装置、系统及存储介质 |
-
2021
- 2021-08-11 CN CN202110921814.9A patent/CN113703835B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446087A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 指令预取方法与预取装置 |
CN102207916A (zh) * | 2011-05-30 | 2011-10-05 | 西安电子科技大学 | 一种基于指令预取的多核共享存储器控制设备 |
US20180165204A1 (en) * | 2016-12-12 | 2018-06-14 | Intel Corporation | Programmable Memory Prefetcher |
CN109219805A (zh) * | 2017-05-08 | 2019-01-15 | 华为技术有限公司 | 一种多核系统内存访问方法、相关装置、系统及存储介质 |
Non-Patent Citations (2)
Title |
---|
安立奎;韩丽艳;: "支持指令预取和缓存划分的多核实时系统缓存WCRT最小化", 渤海大学学报(自然科学版), no. 04, pages 81 - 88 * |
许向阳编著: "《x86 汇编语言程序设计》", 华中科技大学出版社, pages: 19 * |
Also Published As
Publication number | Publication date |
---|---|
CN113703835B (zh) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9977618B2 (en) | Pooling of memory resources across multiple nodes | |
US9990319B2 (en) | Placement of input / output adapter cards in a server | |
US10467106B2 (en) | Data processing method, data processing system, and non-transitory computer program product for controlling a workload delay time | |
KR20120123127A (ko) | 이종 플랫폼에서 포인터를 공유시키는 방법 및 장치 | |
EP2983089B1 (en) | Method, device, and chip for implementing mutually exclusive operation of multiple threads | |
US11940915B2 (en) | Cache allocation method and device, storage medium, and electronic device | |
CN105095138A (zh) | 一种扩展同步内存总线功能的方法和装置 | |
US10216634B2 (en) | Cache directory processing method for multi-core processor system, and directory controller | |
CN110781107B (zh) | 基于dram接口的低延迟融合io控制方法和装置 | |
US8006238B2 (en) | Workload partitioning in a parallel system with hetergeneous alignment constraints | |
CN117377943A (zh) | 存算一体化并行处理系统和方法 | |
CN114721975A (zh) | 链表处理方法、装置、加速器、电路板、设备和存储介质 | |
US20200310690A1 (en) | Dynamic near-data processing control mechanism based on computer resource availability on solid-state disk platforms | |
KR20210011010A (ko) | 가상화를 위한 프로세서 피쳐 id 응답 | |
US10581997B2 (en) | Techniques for storing or accessing a key-value item | |
US10915470B2 (en) | Memory system | |
CN117370046A (zh) | 进程间通信方法、系统、设备和存储介质 | |
US10248331B2 (en) | Delayed read indication | |
US9323475B2 (en) | Control method and information processing system | |
CN113703835A (zh) | 一种基于多核处理器的高速数据流处理方法和系统 | |
CN102982001B (zh) | 众核处理器及其空间访问的方法、主核 | |
TW202008172A (zh) | 儲存系統 | |
CN114398300A (zh) | 方法、集成电路及计算机可读存储介质 | |
TW202119215A (zh) | 共用代碼之系統與代碼共用方法 | |
CN107273188B (zh) | 一种虚拟机中央处理单元cpu绑定方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |