CN108509279A - 一种用于射电天文数据的处理方法、装置及存储介质 - Google Patents
一种用于射电天文数据的处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN108509279A CN108509279A CN201810337491.7A CN201810337491A CN108509279A CN 108509279 A CN108509279 A CN 108509279A CN 201810337491 A CN201810337491 A CN 201810337491A CN 108509279 A CN108509279 A CN 108509279A
- Authority
- CN
- China
- Prior art keywords
- target data
- thread
- data amount
- data
- target
- 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
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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- 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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开的一种用于射电天文数据的处理方法,首先获取目标数据量和预先设置的线程的数量;然后将目标数据量进行分割得到多个目标数据块,最后以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。可见,本方案中,将目标数据量进行分割后分配给多个线程同时进行处理,相对于现有技术中采用单线程对目标数据量进行处理的方式,大大减少了计算数据量所需的时间,同时,由于能对目标数据进行快速处理,从而保证其缓存空间能尽快释放,提高了缓存空间的利用率。此外,本发明还公开了一种用于射电天文数据的处理装置及存储介质,效果如上。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种用于射电天文数据的处理方法、装置及存储介质。
背景技术
平方公里阵列天文望远镜是目前世界上正在建造的最大的综合孔径射电天文望远镜,其拥有多个中频和低频孔径阵列,目前分布在澳洲、南非、荷兰等多个国家,由于该天文望远镜光线收集区的总面积约为1平方公里,因此得名为“平方公里阵列”。其中,deGridding作为平方公里阵列天文望远镜中的数据处理环节,整个天文望远镜中的30%的天文数据都需要通过deGridding进行处理。其中,deGridding的计算核心主要包括三个计算循环,最外层循环是“可视点”计算循环,计算量根据输入的数据集的大小不同,分为2152800和31395840。中间循环是w_support计算循环,计算量为卷积核的X(/Y)轴的长度;最内层循环是suppu计算循环,计算量为卷积核的Y(/X)轴的长度。
目前,deGridding处理数据的方式是串行处理,由于采用串行处理,即采用单线程逐一的处理每次循环中的数据,其处理数据的速度过慢,耗费大量的时间以及缓存空间的利用率较低。
因此,如何提高对天文数据的处理速度以节省数据处理时间以及提高缓存空间的利用率是本领域技术人员需要解决的问题。
发明内容
本发明的目的在于提供一种用于射电天文数据的处理方法、装置及存储介质,提高对天文数据的处理速度以节省数据处理时间以及提高内存空间的利用率。
为实现上述目的,本发明实施例提供了如下技术方案:
首先,本发明实施例提供了一种用于射电天文数据的处理方法,包括:
获取目标数据量和预先设置的线程的数量;
将所述目标数据量进行分割得到多个目标数据块;
以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时计算所述目标数据量。
优选的,所述将所述目标数据量进行分割得到多个目标数据块包括:
确定所述线程的数量和所述目标数据量;
将所述目标数据量和所述线程的数量进行作比得到数量与所述线程的数量相同的目标数据块。
优选的,所述以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时处理所述目标数据量包括:
确定各所述线程对应的处理器核心;
根据与各所述线程对应的处理器核心为各所述线程分配所述目标数据块,以使各所述线程能同时处理所述目标数据量。
优选的,所述以预定义规则为各所述线程分配所述目标数据块之后,还包括:
判断BIOS设置中的封装内存是否为扁平模式;
若是,则将所述扁平模式下的封装内存分配至各所述线程以缓存各所述线程处理后的数据。
优选的,各所述线程处理与各所述线程对应的目标数据块时,所述方法还包括:
获取与各所述线程对应的向量化指令;
判断与所述目标数据块对应的目标循环中的数据类型是否为浮点型;
若是,则利用所述向量化指令同时处理所述目标循环中的多个数据。
优选的,所述利用所述向量化指令对同时处理所述目标循环中的多个数据之后,还包括:
将所述目标循环中的数据的处理结果存储至本地存储。
然后,本发明实施例提供了一种用于射电天文数据的处理装置,包括:
获取模块,用于获取目标数据量和预先设置的线程的数量;
目标数据量分割模块,用于将所述目标数据量进行分割得到多个目标数据块;
目标数据块分配模块,用于以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时计算所述目标数据量。
优选的,所述目标数据量分割模块包括:
确定单元,用于确定所述线程的数量和所述目标数据量;
目标数据量分割单元,用于将所述目标数据量和所述线程的数量进行作比得到数量与所述线程的数量相同的目标数据块。
其次,本发明实施例公开了另一种用于射电天文数据的处理装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序以实现如上任一项所述的用于射电天文数据的处理方法的步骤。
最后,本发明实施例公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一项所述的用于射电天文数据的处理方法的步骤。
本发明公开的一种用于射电天文数据的处理方法,首先获取目标数据量和预先设置的线程的数量;然后将目标数据量进行分割得到多个目标数据块,最后以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。可见,本方案中,将目标数据量进行分割后分配给多个线程同时进行处理,相对于现有技术中采用单线程对目标数据量进行处理的方式,大大减少了计算数据量所需的时间,同时,由于能对目标数据进行快速处理,从而保证其缓存空间能尽快释放,提高了缓存空间的利用率。此外,本发明还公开了一种用于射电天文数据的处理装置及存储介质,效果如上。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种用于射电天文数据的处理方法流程示意图;
图2为本发明实施例公开的一种实现目标数据量的均分的代码示意图;
图3为本发明实施例公开的一种对目标数据量进行向量化处理的过程示意图;
图4为本发明实施例公开的一种对目标数据量进行向量化处理的具体实现代码示意图;
图5为本发明实施例公开的一种用于射电天文数据的处理装置结构示意图;
图6为本发明实施例公开的另一种用于射电天文数据的处理装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种用于射电天文数据的处理方法、装置及存储介质,提高对天文数据的处理速度以节省数据处理时间以及提高内存空间的利用率。
请参见图1,图1为本发明实施例公开的一种用于射电天文数据的处理方法流程示意图,该方法包括:
S101、获取目标数据量和预先设置的线程的数量。
具体的,本实施例中,目标数据量为deGridding中的最外层循环中的数据量,即最外层循环“可视点”中的计算量。对应于最外层循环至最内层循环中的计算量依次为:最外层循环的计算量根据数据集的大小分为2152800和31395480,中间循环的计算量为卷积和的X(/Y)轴的长度,最内层循环的计算量为卷积核的Y(/X)轴的长度。其中,卷积核的定义与现有技术中的卷集核为相同概念,本发明实施例在此不再详细赘述。预先设置的线程的数量是基于OPENMP进行设置,其是使用一个内部队列,在BIOS设置中,单个节点内包含64个核心,每个核心的线程数数为1,因此,对应于该节点,其最大的线程数的数量可以设置为64,当然,线程数的数量的设定可以根据实际需求进行设定,因此,本实施例中,对于预先设置的线程的数量并不作限定。
S102、将目标数据量进行分割得到多个目标数据块。
具体的,本实施例中,根据线程的数量将目标数据量进行均分可以按照以下步骤进行:获取预先设置的线程的数量,和最外层循环中的目标数据量,然后将目标数据量与线程的数量进行作比,从而得到多个数据量相同的目标数据块。当然,也可以将目标数据量均分成与线程的数量不同的目标数据块,即均分后的目标数据块的数量可以比线程的数量少或者均分后的目标数据块的数量比线程的数量多。针对均分后的目标数据块的数量比线程的数量少这种方式,可以将线程的数量扩大一定的倍数,然后将目标数据量与扩大倍数后的线程数量进行作比得到多个目标数据块。针对均分后的目标数据块的数量比线程的数量多这种方式,可以将线程的数量缩小一定的倍数,然后用目标数据量与缩小倍数的线程数量进行作比得到多个目标数据块。当然,将目标数据量进行均分的方式也可以有其他方式,只要保证每个线程处理的数据块的大小相同即可。本发明实施例在此并不作限定。对于上述提到的对目标数据量进行均分的三种方式,在下一步骤中将详细说明针对这三种方式将如何为各线程分配目标数据块。其中,作为优选的实施例,步骤S102包括:确定线程的数量和目标数据量;将目标数据量和线程的数量进行作比得到与线程的数量相同的目标数据块。下面对这一优选的实施例进行说明,以最内层循环的数据量为例;如预先设置线程的数量为64,对于最内层循环的网格维度Grid Dimensions:10000乘10000=100000000的数据样本量需要分成64块,即每块目标数据块的大小为100000000/64=1562500。其中,为了实现上述过程中将目标数据量进行均分得到多个目标数据块的过程,本发明实施例公开了实现目标数据量的均分代码,请参见图2,图2为本发明实施例公开的一种实现目标数据量的均分的代码示意图。
S103、以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。
具体的,本实施例中,预定义规则根据均分得到的目标数据块的数量和线程的数量之间的关系可以有以下三种方式;首先,针对第一种,线程的数量和均分得到的目标数据块的数量相同,此时,可以为每个线程分配一个目标数据块。其次,针对第二种,线程的数量比均分得到的目标数据块的数量多,此时,为每个目标数据块分配一个线程,多余的线程可以作为备用的线程,当任意一个处理目标数据块的线程出现故障时,可以从备用的线程中选取一个线程替代故障的线程以完成对目标数据块的处理。最后,针对第三种,线程的数量比均分得到的目标数据块的数量少,此时,作为优选的实施例,步骤S103包括:确定各线程对应的处理器核心;根据与各线程对应的处理器核心为各线程分配目标数据块,以使各线程能同时处理目标数据量。也就是说可以结合每个线程对应的处理器核心的版本速度,为每个线程分配不同量的目标数据块,即对于处理器核心的版本速度较快的线程,可以分配多个目标数据块,对于处理器核心的版本速度较慢的线程,可以只分配一个目标数据块。只要保证所有的目标数据块能对应有一个线程即可。具体的,分配原则也可以有其他方式。
进一步,将最外层循环中的目标数据量进行分配得到多个目标数据块之后,每个线程执行对应的目标数据块。在每个线程执行每个目标数据块中的数据时,则由外循环到内循环依次执行,例如:最外层循环中的目标数据量为10,将这10个数据分配给两个线程,每个线程对应执行5个数据,当第一个线程执行第一个目标数据块中的第一个数据时,则由中间循环到内层循环依次执行,内层循环和中间循环中的数据量不发生改变,其中,第一个线程和第二个线程同时执行各自线程中对应的数据,每个线程执行各自对应的目标数据块时,依次执行目标数据块中的数据。
需要说明的是,线程的的数量的设定设置于最外层的循环中,各线程对应处理各自的目标数据块之后,先将处理后的数据进行缓存,待所有的线程将各自的目标数据块处理完成后,才将缓存空间中的所有的处理数据进行释放。
本发明实施例公开的一种用于射电天文数据的处理方法,首先获取目标数据量和预先设置的线程的数量;然后将目标数据量进行分割得到多个目标数据块,最后以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。可见,本方案中,将目标数据量进行分割后分配给多个线程同时进行处理,相对于现有技术中采用单线程对目标数据量进行处理的方式,大大减少了计算数据量所需的时间,同时,由于能对目标数据进行快速处理,从而保证其缓存空间能尽快释放,提高了缓存空间的利用率。
基于以上实施例,作为优选的实施例,以预定义规则为各线程分配目标数据块之后,还包括:
判断BIOS设置中的封装内存是否为扁平模式;
若是,则将扁平模式下的封装内存分配至各线程以缓存各线程处理后的数据。
具体的,本实施例中,在BIOS设置中,封装内存MCDRAM需要进行扁平模式配置,即预先由操作人员将MCDRAM封装内存设置成扁平模式并重新启动BIOS***。以完成对封装内存MCDRAM的设置。其中,在设置完成后,利用numactl-hardware指令显示两个NUMA节点。其中,节点0包含64个CPU和200GDDR4内存,节点1包含16GB的MCDRAM封装内存。此时,由于MCDRAM封装内存为扁平模式,此时可以使用-m或者-membind指令将MCDRAM封装内存分配至各NUMA节点内的各线程。在各线程对应处理完个字的目标数据块之后,将处理的数据缓存到封装内存中。由于封装内存的高速缓存特点,能快速存储各线程处理目标数据块之后的数据,从而加快了整个线程处理目标数据块的速率。
基于以上实施例,作为优选的实施例,各线程处理与各线程对应的目标数据块时,所述方法还包括:
获取与各线程对应的向量化指令。
判断与目标数据块对应的目标循环中的数据类型是否为浮点型。
若是,则利用向量化指令同时处理目标循环中的多个数据。
具体的,本实施例中,对于实现循环的向量化,可以使用#Pragma simd指令实现。对于支持512bit向量指令集扩展的机器上,编译器生成相应的向量化指令来向量化循环部分。其中,各线程对应的目标数据块的类型可以为int类型、floate类型等。为了更好的说明本实施例中对循环中的目标数据块进行向量化处理的过程,本发明实施例提供了图3,图3为为本发明实施例公开的一种对目标数据量进行向量化处理的过程示意图,其中,采用单独的操作对循环中的目标数据块进行处理。图中VL标识矢量长度,Ai和Bi为某一类型的目标数据类型对应的目标数据。Ci为包含了多个相同数据类型的标量。其中包含多个相同的数据类型的标量。为了更好的说明向量化的处理过程,本发明实施例提供了图4,图4为本发明实施例公开的一种对目标数据量进行向量化处理的具体实现代码示意图。当指定vectorlength(8)时,理论上一次向量循环相当于8次标量循环,由于value类型包括实部和虚部,并且sizeof(float)=8,因此,理论上每次向量操作的数据长度为4*8*16=512bit,因此,各线程能充分利用本实施例中的向量化指令构成的向量化单元加快线程对目标数据块的计算速度,并将结果存储至data_local中。结合上述的内容,对根据向量化指令和目标数据块的类型对每个目标数据块进行处理作以下说明:例如,线程对应的目标数据块的类型为浮点型,此时,该目标数据块中的浮点型的数据为40个。利用编译器生成的向量化指令对目标数据块中的浮点型的数据进行向量化处理,也就是说,利用线程根据向量化指令每次能处理的浮点型的数据为8个。当然,根据vectorlength()中的数的设置的数量不同,每次向量化处理的数据的个数也可以不同,本发明实施例在此并不作限定。其中,作为优选的实施例,利用向量化指令对同时处理目标循环中的多个数据之后,还包括:将目标循环中的数据的处理结果存储至本地存储。
进一步,目标循环为中间循环和内层循环,其中,中间循环和内层循环中的数据类型有整数型和浮点型,对于浮点型数据,可以利用编译器生成的向量化指令对中间循环和内层循环中的浮点型数据同时进行处理,也就是说,在某一线程处理其对应的目标数据块中的某一个数据时,当其进入到中间循环和内层循环时,对于内层循环和中间循环中的数据可以利用向量化指令依次处理多个。例如,内层循环中的数据为20,若不采用向量化指令进行处理,则需要循环处理20次,若采用向量化指令处理,则向量化指令每次处理10个数据,分两次就可以处理完内部循环中所有的数据。
下面对本发明实施例公开的一种用于射电天文数据的处理装置进行介绍,请参见图5,图5为本发明实施例公开的一种用于射电天文数据的处理装置结构示意图,该装置包括:
获取模块501,用于获取目标数据量和预先设置的线程的数量;
目标数据量分割模块502,用于将目标数据量进行分割得到多个目标数据块;
目标数据块分配模块503,用于以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。
可见,本发明实施例公开的一种用于射电天文数据的处理装置,首先获取模块获取目标数据量和预先设置的线程的数量;然后目标数据量分割模块将目标数据量进行分割得到多个目标数据块,最后目标数据块分配模块以预定义规则为各线程分配目标数据块,以使各线程能同时计算目标数据量。可见,本方案中,将目标数据量进行分割后分配给多个线程同时进行处理,相对于现有技术中采用单线程对目标数据量进行处理的方式,大大减少了计算数据量所需的时间,同时,由于能对目标数据进行快速处理,从而保证其缓存空间能尽快释放,提高了缓存空间的利用率。
基于上述实施例,目标数据量分割模块502包括:
确定单元,用于确定线程的数量和目标数据量;
目标数据量分割单元,用于将目标数据量和线程的数量进行作比得到数量与线程的数量相同的目标数据块。
需要说明的是,本发明实施例中,其他的装置均与上述任意一个实施例提到的用于射电天文数据的处理方法相对应,在此,本发明实施例不再详细赘述。
请参见图6,图6为本发明实施例提供的另一种用于射电天文数据的处理装置结构示意图,该装置包括:
存储器601,用于存储计算机程序;
处理器602,用于执行所述存储器中存储的计算机程序以实现以上任一项提到的用于射电天文数据的处理方法的步骤。
本发明实施例提供的另一种用于射电天文数据的处理装置,具有与上述实施例提到的用于射电天文数据的处理方法相同的技术效果,本发明实施例在此不再赘述。
为了更好地理解本方案,本发明实施例提供的一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一实施例提到的用于射电天文数据的处理方法的步骤。
本发明实施例提供的一种计算机可读存储介质,具有与上述实施例提到的用于射电天文数据的处理方法相同的技术效果,本发明实施例在此不再赘述。
将本发明实施例提供的一种用于射电天文数据的处理方法应用到平方公里阵列天文望远镜的数据处理部分,由于该天文望远镜的数据处理部分的数据处理速度加快,从而缩短了整个天文望远镜对数据进行处理所需的耗时。其次,加快了整个天文望远镜的CPU的响应效率以及提高了平方公里阵列天文望远镜的灵敏度。对整个天文学具有深远的意义。
以上对本申请所提供的一种用于射电天文数据的处理方法、装置及存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种用于射电天文数据的处理方法,其特征在于,包括:
获取目标数据量和预先设置的线程的数量;
将所述目标数据量进行分割得到多个目标数据块;
以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时计算所述目标数据量。
2.根据权利要求1所述的用于射电天文数据的处理方法,其特征在于,所述将所述目标数据量进行分割得到多个目标数据块包括:
确定所述线程的数量和所述目标数据量;
将所述目标数据量和所述线程的数量进行作比得到数量与所述线程的数量相同的目标数据块。
3.根据权利要求1所述的用于射电天文数据的处理方法,其特征在于,所述以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时处理所述目标数据量包括:
确定各所述线程对应的处理器核心;
根据与各所述线程对应的处理器核心为各所述线程分配所述目标数据块,以使各所述线程能同时处理所述目标数据量。
4.根据权利要求3所述的用于射电天文数据的处理方法,其特征在于,所述以预定义规则为各所述线程分配所述目标数据块之后,还包括:
判断BIOS设置中的封装内存是否为扁平模式;
若是,则将所述扁平模式下的封装内存分配至各所述线程以缓存各所述线程处理后的数据。
5.根据权利要求1所述的用于射电天文数据的处理方法,其特征在于,各所述线程处理与各所述线程对应的目标数据块时,所述方法还包括:
获取与各所述线程对应的向量化指令;
判断与所述目标数据块对应的目标循环中的数据类型是否为浮点型;
若是,则利用所述向量化指令同时处理所述目标循环中的多个数据。
6.根据权利要求5所述的用于射电天文数据的处理方法,其特征在于,所述利用所述向量化指令对同时处理所述目标循环中的多个数据之后,还包括:
将所述目标循环中的数据的处理结果存储至本地存储。
7.一种用于射电天文数据的处理装置,其特征在于,包括:
获取模块,用于获取目标数据量和预先设置的线程的数量;
目标数据量分割模块,用于将所述目标数据量进行分割得到多个目标数据块;
目标数据块分配模块,用于以预定义规则为各所述线程分配所述目标数据块,以使各所述线程能同时计算所述目标数据量。
8.根据权利要求7所述的用于射电天文数据的处理装置,其特征在于,所述目标数据量分割模块包括:
确定单元,用于确定所述线程的数量和所述目标数据量;
目标数据量分割单元,用于将所述目标数据量和所述线程的数量进行作比得到数量与所述线程的数量相同的目标数据块。
9.一种用于射电天文数据的处理装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序以实现如权利要求1至6任一项所述的用于射电天文数据的处理方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行以实现如权利要求1至6任一项所述的用于射电天文数据的处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810337491.7A CN108509279A (zh) | 2018-04-16 | 2018-04-16 | 一种用于射电天文数据的处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810337491.7A CN108509279A (zh) | 2018-04-16 | 2018-04-16 | 一种用于射电天文数据的处理方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108509279A true CN108509279A (zh) | 2018-09-07 |
Family
ID=63382381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810337491.7A Pending CN108509279A (zh) | 2018-04-16 | 2018-04-16 | 一种用于射电天文数据的处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108509279A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857741A (zh) * | 2019-01-31 | 2019-06-07 | 重庆零壹空间航天科技有限公司 | 一种火箭遥测数据的遴选方法及装置 |
CN111104218A (zh) * | 2019-11-29 | 2020-05-05 | 北京浪潮数据技术有限公司 | 存储***数据同步方法、装置、设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104375838A (zh) * | 2014-11-27 | 2015-02-25 | 浪潮电子信息产业股份有限公司 | 一种基于OpenMP对天文学软件Gridding的优化方法 |
CN106598552A (zh) * | 2016-12-22 | 2017-04-26 | 郑州云海信息技术有限公司 | 基于Gridding模块的数据点转换方法及装置 |
CN107908477A (zh) * | 2017-11-17 | 2018-04-13 | 郑州云海信息技术有限公司 | 一种用于射电天文数据的数据处理方法及装置 |
-
2018
- 2018-04-16 CN CN201810337491.7A patent/CN108509279A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104375838A (zh) * | 2014-11-27 | 2015-02-25 | 浪潮电子信息产业股份有限公司 | 一种基于OpenMP对天文学软件Gridding的优化方法 |
CN106598552A (zh) * | 2016-12-22 | 2017-04-26 | 郑州云海信息技术有限公司 | 基于Gridding模块的数据点转换方法及装置 |
CN107908477A (zh) * | 2017-11-17 | 2018-04-13 | 郑州云海信息技术有限公司 | 一种用于射电天文数据的数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
李雪宝: "太阳望远镜海量数据并行处理技术研究", 《中国博士学位论文全文数据库 (基础科学辑)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857741A (zh) * | 2019-01-31 | 2019-06-07 | 重庆零壹空间航天科技有限公司 | 一种火箭遥测数据的遴选方法及装置 |
CN109857741B (zh) * | 2019-01-31 | 2021-04-06 | 重庆零壹空间航天科技有限公司 | 一种火箭遥测数据的遴选方法及装置 |
CN111104218A (zh) * | 2019-11-29 | 2020-05-05 | 北京浪潮数据技术有限公司 | 存储***数据同步方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5425541B2 (ja) | マルチプロセッサ・システム上でデータ・セットを区分化およびソートするための方法および装置 | |
Schäfer et al. | High performance stencil code algorithms for GPGPUs | |
CN107168683A (zh) | 国产申威26010众核cpu上gemm稠密矩阵乘高性能实现方法 | |
CN109255829A (zh) | 用于光线跟踪的混合层级 | |
Bergen et al. | Hierarchical hybrid grids: data structures and core algorithms for multigrid | |
CN102004670A (zh) | 一种基于MapReduce的自适应作业调度方法 | |
CN110415157A (zh) | 一种矩阵乘法的计算方法及装置 | |
CN108509279A (zh) | 一种用于射电天文数据的处理方法、装置及存储介质 | |
CN105468439A (zh) | 在cpu-gpu异构框架下遍历固定半径内邻居的自适应并行算法 | |
CN107704323A (zh) | 一种网络爬虫任务调度方法及装置 | |
CN107193761A (zh) | 队列优先级仲裁的方法与装置 | |
CN110516316A (zh) | 一种间断伽辽金法求解欧拉方程的gpu加速方法 | |
CN107908477A (zh) | 一种用于射电天文数据的数据处理方法及装置 | |
CN108509280A (zh) | 一种基于推送模型的分布式计算集群本地性调度方法 | |
IL264794B2 (en) | Scheduling of tasks on a multi-processor device | |
CN111079078B (zh) | 面向结构网格稀疏矩阵的下三角方程并行求解方法 | |
CN106484532B (zh) | 面向sph流体模拟的gpgpu并行计算方法 | |
CN104572588B (zh) | 矩阵求逆处理方法和装置 | |
Tang et al. | Optimizing and auto-tuning iterative stencil loops for GPUs with the in-plane method | |
CN106897131A (zh) | 一种用于天文软件Gridding的并行计算方法及其装置 | |
CN107305486A (zh) | 一种神经网络maxout层计算装置 | |
CN106598552A (zh) | 基于Gridding模块的数据点转换方法及装置 | |
CN105260175B (zh) | 基于OpenMP的天文学软件Gridding的处理方法 | |
Castro et al. | NUMA-ICTM: A parallel version of ICTM exploiting memory placement strategies for NUMA machines | |
CN104050189B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190222 Address after: 100085 floor 1, C 2-1, No. 2, Shang Di Road, Haidian District, Beijing. Applicant after: INSPUR (BEIJING) ELECTRONIC INFORMATION INDUSTRY Co.,Ltd. Address before: Room 1601, floor 16, 278 Xinyi Road, Zhengdong New District, Zhengzhou City, Henan Province Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180907 |
|
RJ01 | Rejection of invention patent application after publication |