CN112068955A - 一种异构多核平台处理器内的通信优化方法及电子设备 - Google Patents
一种异构多核平台处理器内的通信优化方法及电子设备 Download PDFInfo
- Publication number
- CN112068955A CN112068955A CN202010852501.8A CN202010852501A CN112068955A CN 112068955 A CN112068955 A CN 112068955A CN 202010852501 A CN202010852501 A CN 202010852501A CN 112068955 A CN112068955 A CN 112068955A
- Authority
- CN
- China
- Prior art keywords
- core
- slave
- data
- cores
- calculation
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 51
- 238000004891 communication Methods 0.000 title claims abstract description 50
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000005457 optimization Methods 0.000 title claims abstract description 20
- 238000004364 calculation method Methods 0.000 claims abstract description 76
- 238000003860 storage Methods 0.000 claims abstract description 52
- 230000015654 memory Effects 0.000 claims abstract description 46
- 238000011176 pooling Methods 0.000 claims abstract description 5
- 238000013507 mapping Methods 0.000 claims description 14
- 235000019580 granularity Nutrition 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000003491 array Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 238000013506 data mapping Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000004519 manufacturing process Methods 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Devices For Executing Special Programs (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种异构多核平台处理器内的通信优化方法及电子设备,该方法包括:将异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核;对位于同一列的从核进行池化处理,使得同一列的从核共享存储空间;其中,每列核组中的计算从核的内存用于存储计算所需数据,存储从核的内存用于存储计算结果数据,且每列核组中的计算从核共享存储从核的内存;在当前列中的所有计算从核均计算结束且计算结果数据已存储至当前列的存储从核中时,通过当前列中的存储从核将当前列的计算结果数据写入主核中。本发明优化了数据映射方式和从核的分工方式且实现了从核内存共享池,提高了访存命中率。
Description
技术领域
本发明涉及处理器内通信优化技术领域,特别涉及一种异构多核平台处理器内的通信优化方法及电子设备。
背景技术
受时钟频率和单核处理器执行能力的影响,在单核处理器性能提升遇到瓶颈的情况下,处理器开始朝多核方向发展。根据同一芯片上集成的各个处理器核的结构是否一致,可将多核处理器划分为两类,即同构多核处理器与异构多核处理器。与同构多核处理器相比,异构多核处理器的设计比较复杂,不仅需要考虑核间的互连通信和存储结构,更要根据各个内核所支持和执行的应用程序来设计每个单处理器。异构多核处理器集成了多个功能、结构与运算性能都不相同的处理器核心,每个处理器核心分别负责各自的任务,可以更加灵活高效地均衡资源配置,提升系统性能,有效降低系统功耗,这些特点都符合未来计算机系统发展的要求,因此异构多核处理器已经成为多核处理器发展的趋势。
但是,异构多核处理器在提高计算速度的同时也产生了一些时至今日尚未解决或者解决效果不好的难题:即能耗墙、存储墙、编程墙、通信墙、可靠性墙5大问题的巨大挑战,其中通信问题尤为突出。异构多核处理器的设计复杂,不仅需要根据不同的体系结构进行合理的任务划分还需要保证不同功能核之间的相互通信。随着异构多核处理器的普及,研究其在提高计算效率的同时降低通信开销是当前研究的重点。相比于同构多核架构,在异构多核架构下保证合理的任务划分及核间通信并在保证正确性的情况下,降低通信开销的难度更高。
因此,结合异构多核处理器的特点,进行合理高效的任务划分及核间通信,并降低不同核之间的通信开销是目前需要研究的关键问题。
发明内容
本发明提供了一种异构多核平台处理器内的通信优化方法及电子设备,以解决在异构多核架构下保证合理的任务划分及核间通信,并在保证正确性的情况下,降低不同核之间的通信开销的技术问题。
为解决上述技术问题,本发明提供了如下技术方案:
一方面,本发明提供了一种异构多核平台处理器内的通信优化方法,包括:
将所述异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核;
对位于同一列的从核进行池化处理,使得同一列的从核共享存储空间;其中,每列核组中的计算从核的内存用于存储计算所需数据,存储从核的内存用于存储计算结果数据,且每列核组中的计算从核共享存储从核的内存;
在当前列中的所有计算从核均计算结束且计算结果数据已存储至当前列的存储从核中时,通过当前列中的存储从核将当前列的计算结果数据写入主核中。
进一步地,所述异构多核平台的从核阵列为8×8的从核阵列;
所述将所述异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核,包括:
将所述异构多核平台的8×8的从核阵列按列划分为8列核组,并将每列核组的8个从核中的前7个从核划分为计算从核,最后一个从核划分为存储从核。
进一步地,所述方法还包括:将计算所需数据映射到所述计算从核上。
进一步地,所述将计算所需数据映射到所述计算从核上,包括:
将计算所需数据按照M*7*8的大小划分成至少一个数据块;其中,M为所述异构多核平台的从核阵列中单个从核的局部数据存储器的大小;
当计算所需数据的大小不是M*7*8的整数倍时,将计算所需数据的大小对M*7*8进行取余运算,并根据运算结果确定是否将剩余数据划分为一个数据块;
将划分出的数据块,依次以列优先的形式映射到所述计算从核上。
进一步地,所述从核阵列之间按列进行寄存器间通信,以实现数据共享;所述存储从核通过直接存储器访问DMA与所述主核通信。
进一步地,所述通过当前列中的存储从核将当前列的计算结果数据写入主核中,包括:
基于当前存储从核中数据的大小,来划分当前存储从核中数据的传输粒度,将计算结果数据按照不同的粒度传给主核,以减少主核和从核之间的通信次数。
进一步地,所述基于当前存储从核中数据的大小,来划分当前存储从核中数据的传输粒度,将计算结果数据按照不同的粒度传给主核,包括:
若当前存储从核中的数据所占用的内存空间正好是128B的整数倍,则数据的传输粒度按照计算结果所占用的空间,存储至主核的相应数组中;
若当前存储从核中的数据所占用的内存空间不是128B的整数倍,则分两次进行数据的传输;其中,第一次是按照计算的S*128B进行DMA传输,第二次是将剩余的计算结果数据写回主核;其中,S为预设常数且S为正整数。
另一方面,本发明还提供了一种电子设备,其包括处理器和存储器;其中,存储器中存储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
再一方面,本发明还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
本发明提供的技术方案带来的有益效果至少包括:
本发明设计了新的数据映射方式,将8×8的从核阵列的每一列划分为7个计算从核和1个存储从核,优化了数据映射方式和从核的分工方式。并且本发明实现了从核内存共享池,增大了从核LDM的容量,从而提高了访存命中率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的异构多核平台处理器内的通信优化方法流程图;
图2为本发明实施例提供的从核阵列的映射和划分示意图;
图3为本发明实施例提供的从核LDM的内存共享池示意图;
图4为本发明实施例提供的原子规模为50×100×100的Crystal-MD程序运行时间对比示意图;
图5为本发明实施例提供的原子规模为300×400×500的Crystal-MD程序运行时间对比示意图;
图6为本发明实施例提供的原子规模为1200×1200×1200的Crystal-MD程序运行时间对比示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
第一实施例
本实施例提供了一种异构多核平台处理器内的通信优化方法,该方法可以由电子设备实现,该电子设备可以是终端或者服务器。该异构多核平台处理器内的通信优化方法的执行流程如图1所示,包括以下步骤:
S101,将异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核;
具体地,本实施例结合神威·太湖之光平台的具体结构,充分利用其从核阵列的架构特性,将其8×8的从核阵列按列划分为8列核组,每列的8个从核是一个整体,从核阵列按照这种情况被分为8个整体,并将每列核组的8个从核中的前7个从核划分为计算从核,最后一个从核划分为存储从核。如图2所示,其中白色的从核为计算从核,需要进行数据映射,灰色的从核为存储从核,不需要进行数据映射,每个整体需要对连续的7个计算从核进行数据映射。
S102,对位于同一列的从核进行池化处理,使得同一列的从核共享存储空间;其中,每列核组中的计算从核的内存用于存储计算所需数据,存储从核的内存用于存储计算结果数据,且每列核组中的计算从核共享存储从核的内存;
需要说明的是,针对神威处理器内的从核阵列,由于每个从核仅具有64KB内存。为此,本实施例设计“共享池”来增大从核内存,并且用每列的一个从核作为存储从核来共享存储计算结果数据,其具体结构如图3所示。
具体地,为减少不必要的通信开销,结合神威从核阵列的特殊架构与通信方式(主要是行通信或列通信),本实施例将每列核组看成一个整体,即将位于同一列的从核阵列进行“池”化处理。这样就可以将内存分为8个部分,每部分的内存空间大小为64KB×8。每列的前7个从核为计算从核,其中的局部数据存储器LDM用来存储计算所需数据,对应的内存大小为64KB×7。由于涉及到数据划分,在此过程中,难免相互关联的数据被分配到不同的从核上,且从核阵列之间可按列进行寄存器间通信。相当于从核每列的前7个从核共享这64KB×7的内存空间大小,每列的第8个从核作为存储从核,负责与主核进行通信,每列的前7个从核可共享第8个从核的内存。计算从核通过寄存器通信将计算结果传送给存储从核。7个计算从核间通过寄存器通信共享计算数据,每部分仅通过每列的最后一个从核与主核进行通信,从而减少从核阵列与主核之间频繁的直接存储器访问DMA通信,以减少通信开销,达到通信优化的目的。
S103,在当前列中的所有计算从核均计算结束且计算结果数据已存储至当前列的存储从核中时,通过当前列中的存储从核将当前列的计算结果数据写入主核中。
进一步地,本实施例还包括将计算所需数据映射到所述计算从核上,包括:
1、将计算所需数据按照64K×7×8的大小划分成至少一个数据块;将划分出的数据块的数量值赋值给数组block_count;
2、当计算所需数据的大小不是64K×7×8的整数倍时,将计算所需数据的大小对64K×7×8进行取余运算,并根据运算结果是否为零来确定是否将剩余数据划分为一个数据块来进行计算;如果需要将其划分为一个块,则将块的数目加1,以此标记数据需要映射的次数以及作为判断映射和计算是否结束的标志;
3、将是否得到数据的标志val_get全部初始化为false,意味着还没有开始分配数据;
4、共享池先判断是否有需要映射到从核上的数据块。如果有,则判断需要映射到从核上的数组大小是否比64K×7×8小。如果比64K×7×8小,则只需将这些数据进行一次映射并计算即可。如果数组block_count大于1,则说明需要映射到从核上的数组大小大于64K×7×8。因此,在映射时需要按从核的局存尺寸大小64K进行相应的映射;
5、将数据按照计算的大小,以列优先的形式映射到从核上。其中,行row的变化范围是0~6,意味着最后每列的最后一行不存放数据。列col变化范围是0~7,意味着一共映射8列。改变数据标志位为true,代表已经分配数据,继续循环分配直到将所有的数据映射到除了需要进行通信的每列的最后一个核之外的其它56个计算从核上为止。跳出循环,结束数据映射。
6、一次映射结束,将需要映射的数据块数目减1,再根据需要映射的数据块数目来判断是否还有数据需要继续在从核上映射数据,一直循环到数据块数目为0(这意味着计算所需数据已经计算完成,结束从核加速进程)。
共享池的实现过程如下:
1、首先,将存储从核是否可以将计算结果数据存储到主核上的标志val_put初始化为false,意味着还没有开始进行计算,也没有计算结果的产生(即没有计算结果和主核的数据交互);
2、将计算从核是否结束的标志val_over全部初始化为false,意味着还没有开始进行计算,或者本计算从核还未计算完成,以此来判断是否将计算结果数据通过寄存器发送给目标存储从核;
3、判断计算结果数据是否已经发送。如果未发送,则判断是否已经计算结束。如果还没有计算结束,则先进行计算。在计算的时候,判断是否需要访问相邻从核的数据。如果需要,则通过寄存器发送访问请求,并获取数据;如果不需要,则直接进行计算,并将计算结果数据发送给当前列中的最后一个从核的LDM,并将计算结束标志变成true,意味着当前从核计算结束;
4、对存储计算结果数据的从核进行访问,依次判断当前列前七个从核是否计算结束。如果没有结束,则进行等待,直到所有的标志位数据全部变成1,此时意味着该列所有从核计算结束;
5、如果7个从核都已经计算结束,则此时需要将val_put变为true,这意味着可将计算结果数据通过当前列的存储从核写回主核的相应数组中。
主从核之间的通信过程如下:
1、当val_put为真时,意味着该列所有的计算从核已经计算结束,且已将计算结果数据存储在了对应的存储从核上;
2、考虑到从核LDM与主核数据传输的特殊性,针对DMA传输的峰值性能出现在主核地址为128B对界且传输量为128B整数倍的时候。因此,通过计算当前存储从核中存放数据的数组的大小,来划分当前存储从核中数据的传输粒度,将计算结果数据按照不同的粒度传给主核,以减少主从核间的通信次数;
3、若当前存储从核中的数据所占用的内存空间正好是128B的整数倍,则数据的传输粒度按照计算结果所占用的空间,存储在p指针所指向的主核空间上;若数据所占用的内存空间不是128B的整数倍,则分两次进行数据的传输;其中,第一次是按照计算的S*128B进行DMA传输,第二次是将剩余的计算结果数据写回主核;其中,S为预设常数且S为正整数。两次通信即可完成从核计算结果数据到主核的写回,从而减少了通信的次数,实现了通信优化。
在神威·太湖之光的多个核组上运行基于本实施例的通信优化方法的Crystal-MD程序,并与原始Crystal-MD程序和基于插值计算的Crystal-MD程序进行对比,对比结果如图4、图5和图6所示;可见,采用本实施例提出的通信优化方法的Crystal-MD程序运行效率得到了有效提升。
综上,本实施例的异构多核平台处理器内的通信优化方法设计了新的数据映射方式,将8×8的从核阵列的每一列划分为7个计算从核和1个存储从核,优化了数据映射方式和从核的分工方式。并且实施例的通信优化方法实现了从核内存共享池,从而增大了从核LDM的容量,进而有效提高了访存的命中率。
第二实施例
本实施例提供一种电子设备,其包括处理器和存储器;其中,存储器中存储有至少一条指令,所述指令由处理器加载并执行,以实现第一实施例的方法。
该电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)和一个或一个以上存储器,其中,存储器中存储有至少一条指令,所述指令由处理器加载并执行上述方法步骤。
第三实施例
本实施例提供一种计算机可读存储介质,该存储介质中存储有至少一条指令,所述指令由处理器加载并执行,以实现第一实施例的方法。其中,该计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。其内存储的指令可由终端中的处理器加载并执行。
此外,需要说明的是,本发明可提供为方法、装置或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
最后需要说明的是,以上所述是本发明优选实施方式,应当指出,尽管已描述了本发明优选实施例,但对于本技术领域的技术人员来说,一旦得知了本发明的基本创造性概念,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
Claims (8)
1.一种异构多核平台处理器内的通信优化方法,其特征在于,包括:
将所述异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核;
对位于同一列的从核进行池化处理,使得同一列的从核共享存储空间;其中,每列核组中的计算从核的内存用于存储计算所需数据,存储从核的内存用于存储计算结果数据,且每列核组中的计算从核共享存储从核的内存;
在当前列中的所有计算从核均计算结束且计算结果数据已存储至当前列的存储从核中时,通过当前列中的存储从核将当前列的计算结果数据写入主核中。
2.如权利要求1所述的异构多核平台处理器内的通信优化方法,其特征在于,所述异构多核平台的从核阵列为8×8的从核阵列;
所述将所述异构多核平台的从核阵列按列划分为多列核组,并将每列核组中的多个从核分别划分为至少一个存储从核和多个连续的计算从核,包括:
将所述异构多核平台的8×8的从核阵列按列划分为8列核组,并将每列核组的8个从核中的前7个从核划分为计算从核,最后一个从核划分为存储从核。
3.如权利要求2所述的异构多核平台处理器内的通信优化方法,其特征在于,所述方法还包括:将计算所需数据映射到所述计算从核上。
4.如权利要求3所述的异构多核平台处理器内的通信优化方法,其特征在于,所述将计算所需数据映射到所述计算从核上,包括:
将计算所需数据按照M*7*8的大小划分成至少一个数据块;其中,M为所述异构多核平台的从核阵列中单个从核的局部数据存储器的大小;
当计算所需数据的大小不是M*7*8的整数倍时,将计算所需数据的大小对M*7*8进行取余运算,并根据运算结果确定是否将剩余数据划分为一个数据块;
将划分出的数据块,依次以列优先的形式映射到所述计算从核上。
5.如权利要求1所述的异构多核平台处理器内的通信优化方法,其特征在于,所述从核阵列之间按列进行寄存器间通信,以实现数据共享;所述存储从核通过直接存储器访问DMA与所述主核通信。
6.如权利要求5所述的异构多核平台处理器内的通信优化方法,其特征在于,所述通过当前列中的存储从核将当前列的计算结果数据写入主核中,包括:
基于当前存储从核中数据的大小,来划分当前存储从核中数据的传输粒度,将计算结果数据按照不同的粒度传给主核,以减少主核和从核之间的通信次数。
7.如权利要求6所述的异构多核平台处理器内的通信优化方法,其特征在于,所述基于当前存储从核中数据的大小,来划分当前存储从核中数据的传输粒度,将计算结果数据按照不同的粒度传给主核,包括:
若当前存储从核中的数据所占用的内存空间正好是128B的整数倍,则数据的传输粒度按照计算结果所占用的空间,存储至主核的相应数组中;
若当前存储从核中的数据所占用的内存空间不是128B的整数倍,则分两次进行数据的传输;其中,第一次是按照计算的S*128B进行DMA传输,第二次是将剩余的计算结果数据写回主核;其中,S为预设常数且S为正整数。
8.一种电子设备,包括至少一个处理器和至少一个存储器;其特征在于,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行,以实现如权利要求1-7任一项所述的异构多核平台处理器内的通信优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010852501.8A CN112068955B (zh) | 2020-08-21 | 2020-08-21 | 一种异构多核平台处理器内的通信优化方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010852501.8A CN112068955B (zh) | 2020-08-21 | 2020-08-21 | 一种异构多核平台处理器内的通信优化方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112068955A true CN112068955A (zh) | 2020-12-11 |
CN112068955B CN112068955B (zh) | 2023-10-27 |
Family
ID=73659950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010852501.8A Active CN112068955B (zh) | 2020-08-21 | 2020-08-21 | 一种异构多核平台处理器内的通信优化方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068955B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817898A (zh) * | 2021-02-08 | 2021-05-18 | 清华大学 | 数据传输方法、处理器、芯片及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446158A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 多核处理器及多核处理器组 |
CN104820582A (zh) * | 2015-05-14 | 2015-08-05 | 西安电子科技大学 | 一种基于Navigator的多核嵌入式DSP并行编程模型实现方法 |
CN104899089A (zh) * | 2015-05-25 | 2015-09-09 | 常州北大众志网络计算机有限公司 | 一种面向异构多核体系的任务调度方法 |
WO2017114061A1 (zh) * | 2015-12-28 | 2017-07-06 | 中兴通讯股份有限公司 | 多核异构系统及其硬件资源的管理方法 |
CN108920413A (zh) * | 2018-06-28 | 2018-11-30 | 中国人民解放军国防科技大学 | 面向gpdsp的卷积神经网络多核并行计算方法 |
-
2020
- 2020-08-21 CN CN202010852501.8A patent/CN112068955B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446158A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 多核处理器及多核处理器组 |
CN104820582A (zh) * | 2015-05-14 | 2015-08-05 | 西安电子科技大学 | 一种基于Navigator的多核嵌入式DSP并行编程模型实现方法 |
CN104899089A (zh) * | 2015-05-25 | 2015-09-09 | 常州北大众志网络计算机有限公司 | 一种面向异构多核体系的任务调度方法 |
WO2017114061A1 (zh) * | 2015-12-28 | 2017-07-06 | 中兴通讯股份有限公司 | 多核异构系统及其硬件资源的管理方法 |
CN108920413A (zh) * | 2018-06-28 | 2018-11-30 | 中国人民解放军国防科技大学 | 面向gpdsp的卷积神经网络多核并行计算方法 |
Non-Patent Citations (5)
Title |
---|
姚文军;陈俊仕;苏志超;余洋;廖陈志;安虹;: "基于神威太湖之光的NAMD软件的移植与优化", 计算机工程与科学, no. 06, pages 1 - 8 * |
戴卓臣;陆江东;: "面向数据加密的多核多线程并行研究", 电子设计工程, no. 08 * |
李秉政;黄高阳;许瑾晨;: "面向申威众核处理器的LZMA并行算法设计与优化", 计算机科学与探索, no. 09 * |
汪健;张磊;王少轩;赵忠惠;陈亚宁;: "多核处理器核间高速通讯架构的研究", 电子与封装, no. 06 * |
胡正丁;薛巍;: "面向异构众核超级计算机的大规模稀疏计算性能优化研究", 大数据, no. 04 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817898A (zh) * | 2021-02-08 | 2021-05-18 | 清华大学 | 数据传输方法、处理器、芯片及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112068955B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103197953A (zh) | 推测执行和回滚 | |
CN110990154B (zh) | 一种大数据应用优化方法、装置及存储介质 | |
CN106708626A (zh) | 一种面向低功耗的异构多核共享cache划分方法 | |
KR101639853B1 (ko) | 복수의 엔진에 의해 명령어 시퀀스들의 실행을 지원하기 위한 자원들 및 상호접속 구조들의 비집중 할당 | |
US20140053161A1 (en) | Method for Adaptive Scheduling of Multimedia Jobs | |
CN114730275A (zh) | 使用张量在分布式计算系统中进行矢量化资源调度的方法和装置 | |
JP7205033B2 (ja) | キャッシュの割当方法と装置、記憶媒体、電子装置 | |
Tripathy et al. | Paver: Locality graph-based thread block scheduling for gpus | |
EP4060505A1 (en) | Techniques for near data acceleration for a multi-core architecture | |
CN104281495A (zh) | 多核处理器共享高速缓存任务调度方法 | |
CN112130901A (zh) | 基于risc-v的协处理器、数据处理方法及存储介质 | |
CN111352727A (zh) | 一种应用于图像混合集群处理系统的图像处理方法 | |
CN112068955B (zh) | 一种异构多核平台处理器内的通信优化方法及电子设备 | |
CN114217930A (zh) | 一种基于混合任务调度的加速器系统资源优化管理方法 | |
KR20230063791A (ko) | 인공지능 코어, 인공지능 코어 시스템 및 인공지능 코어 시스템의 로드/스토어 방법 | |
CN105988856A (zh) | 解释器访存优化方法及装置 | |
KR101639854B1 (ko) | 복수의 엔진에 의해 명령어 시퀀스들의 실행을 지원하기 위한 상호접속 구조 | |
Beri et al. | A scheduling and runtime framework for a cluster of heterogeneous machines with multiple accelerators | |
CN110990151A (zh) | 一种基于异构计算平台的业务处理方法 | |
CN115185860B (zh) | 一种缓存访问系统 | |
Li et al. | A new software cache structure on Sunway TaihuLight | |
CN117785484B (zh) | 共享Cache资源分配方法、系统、计算机设备及介质 | |
US20110320781A1 (en) | Dynamic data synchronization in thread-level speculation | |
CN116450055B (zh) | 一种多处理卡间的存储区域分配方法和系统 | |
CN116450564B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |