CN108491187B - 一种基于top-k分割超立方体模型的并行处理方法 - Google Patents

一种基于top-k分割超立方体模型的并行处理方法 Download PDF

Info

Publication number
CN108491187B
CN108491187B CN201810156673.4A CN201810156673A CN108491187B CN 108491187 B CN108491187 B CN 108491187B CN 201810156673 A CN201810156673 A CN 201810156673A CN 108491187 B CN108491187 B CN 108491187B
Authority
CN
China
Prior art keywords
data
reference value
hypercube
elements
nodes
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.)
Active
Application number
CN201810156673.4A
Other languages
English (en)
Other versions
CN108491187A (zh
Inventor
张全友
寇琼洁
袁洋泱
陶战刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningxia Yifan Weining Technology Co.,Ltd.
Zhiyueyun Guangzhou Digital Information Technology Co ltd
Original Assignee
Xuchang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xuchang University filed Critical Xuchang University
Priority to CN201810156673.4A priority Critical patent/CN108491187B/zh
Publication of CN108491187A publication Critical patent/CN108491187A/zh
Application granted granted Critical
Publication of CN108491187B publication Critical patent/CN108491187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开了一种基于TOP‑K分割超立方体模型的并行处理方法,属于数据处理技术领域,针对现有技术中的问题,该方法以超立方体模型并行处理模型为研究对象,提出了基于TOP‑K分割的最佳方法,然后依据该数据分割方式,改进原基于超立方体模型并行处理方法,进一步提出了基于TOP‑K分割超立方体模型的并行处理方法。改进后的方法在算法的时间复杂度和可扩展性以及加速比都较原方法有已经的提升。

Description

一种基于TOP-K分割超立方体模型的并行处理方法
技术领域
本发明属于数据处理技术领域,涉及一种基于TOP-K分割超立方体模型的并行处理方法。
背景技术
随着计算数据量的变化,数据处理也经历了并行计算、分布式处理和云计算处理方法。并行处理是数据处理的有效方法,它可以利用多处理单元、存储单元同时处理数据,实现对问题的快速求解。在并行处理过程中,各处理单元拥有自己的存储单元以及各处理单元之间互连互通的通信方式。如果处理对象是较大规模的数据,并行处理的方法首先是将数据集进行分割,然后再把数据子集映射到各个处理单元上。在考虑数据对象的并行计算同时也要考虑控制程序的并行执行,因此并行处理方法的时间复杂度不仅要考虑数据计算的复杂性,还必须考虑数据通信复杂性。
在基于超立方体模型的并行处理方法中,会分割超立方形成分割后的数据块,如果第一次选择的中心元恰好是最小或最大元素。那么,在第一次分割后,所有的元素都将集中到一个(n-1)维子超立方体上,而另一个(n-1)维子超立方体为空。在后续的工作中,最多只有一半节点继续工作,而另一半则空闲。这样的话浪费分割时间,增加数据处理时间。因此,每次分割后的子数组数据的大小将会影响超立方并行处理算法的时间复杂度。
现有技术中,急需一种基于TOP-K分割超立方体模型的并行处理方法。
发明内容
本发明的目的在于,提出了一种基于TOP-K分割超立方体模型的并行处理方法。该方法以超立方体模型并行处理模型为研究对象,提升了基于超立方模型的并行处理能力,该方法的处理时间和可扩展性以及加速比都较原方法有所提升。
其技术方案如下:
一种基于TOP-K分割超立方体模型的并行处理方法,
其中,k:自然数k;
TOP-K:第k个大的值;
O(n):时间复杂度为n;
d:递归次数;
O(log2 2p):时间复杂度为log2 2p;
n:数量大小;
p:并行处理单元个数;
包括以下步骤:
步骤1:寻找第k个大的值;
步骤1.1:选取基准值;
步骤1.2:以步骤1.1步选取的基准值做为分界点,把小于基准值的数放在左边,大于基准值的数放在右边;
步骤1.3:判断基准值的位置与k的大小,若基准值的位置等于k,则表明找到了中位数,如果基准值的位置大于k,则在步骤2中的左边递归该算法进行递归运算,如果基准值的位置小于k,则在步骤1.2中的右边递归该算法进行递归运算。
步骤2:由步骤1求出的值即为问题的TOP-K值,以此值作为中心元。并将该中心元广播到所有节点上。依据中心元,将数据分割两部分,随机分配在子超立方节点上。该阶段的时间复杂度为O(n)。
步骤3:进过d次递归步骤1,步骤2,原数据分配早子超立方体的节点上。沿第(d-(i-1))维通信链路互联的处理器互联互换数据块进行计算处理。由于最多有
Figure BSA0000159672060000032
个元素需要在节点间发送,由于在第i次迭代广播中心元需要O(d-(i-1))时间。因而,在所有d=log2p次分割中,链路通讯所需的时间为
Figure BSA0000159672060000031
步骤4:建立节点互联互通链路,沿第n维的通信链路互联的节点互联互通。节点标号的第n位为0的(n-1)维子超立方体包含原数据中的特征集,节点标号的第n位为1的(n-1)维子超立方体包含原数据中剩下的数据。根据程序设计目标,每个节点进行计算,由于共有p个节点,数据被平均分配,所以节点上运行的时间复杂度为O((n/p)log2p)。
步骤5:每个子立方体递归地对所拥有的子数据进行处理,每个子立方体递归地对所拥有的子数据进行处理,每个节点上的数据处理后进行合并汇总,得出问题求解结果。该段有O(n/p)个元素进行合并求解时间复杂度为log2(n/p),最后对每块数据进行串行处理,时间复杂度是O((n/p)log2(n/p))。
进一步,步骤1.1具体为:
步骤1.1.1:将n个元素划分为
Figure BSA0000159672060000033
个组,每组5个元素,若有剩余作为下次划分凑5个元素的补缺数使用;
步骤1.1.2:找出步骤1.1.1中每一组数中的中位数;
步骤1.1.3:对于步骤1.1.2中找到的所有中位数和步骤1.1.1中的剩余数,进行新的划分为
Figure BSA0000159672060000034
个组,每组5个元素,若有剩余作为下次划分凑5个元素的补缺数使用;
步骤1.1.4:循环调用前三步,求出它们的中位数,作为基准值。
本发明的有益效果为:
本发明的基于TOP-K分割超立方体模型的并行处理方法中,提出了基于TOP-K分割的最佳方法,然后依据该数据分割方式,改进原基于超立方体模型并行处理方法,进一步提出了基于TOP-K分割超立方体模型的并行处理方法。改进后的方法在算法的时间复杂度和可扩展性以及加速比都较原方法有已经的提升。
附图说明
图1是d次分割总时间变化趋势图;
图2是时间复杂度变化曲线;
图3是可扩展性变化曲线;
图4是加速比变化曲线。
具体实施方式
下面结合符合具体实施方式对本发明的技术方案作进一步详细地说明。
本发明比原方法效果提高证明如下:
假设,在d次分割的每一次分割中,节点P1中存储的子数据的大小都增加k倍,取中1<=k<=2。于是,d次分割中所花费的总时间为
Figure BSA0000159672060000041
当k>1,总的时间为O((kd-1)n/p)。由于p=2d,上式可以化简为
Figure BSA0000159672060000042
当k=2,则P1分割所用的时间为O((n-n/p),d次分割后,P1上的子数据大小为2dn/p。
当k=1.1,则分割所用的时间为O((p0.138-1)n/p),本地排序的子数据大小为n/p0.138
当k=1,则分割所用的时间为O((nlog2p)/p),本节点的子数据大小为n/p,为理想情况。由此可见,k越大算法的性能越差,如表1所示,d次分割总时间变化趋势如图1所示。
表1:d次分割总时间变化趋势表
Figure BSA0000159672060000043
Figure BSA0000159672060000051
从上面分割花费总时间变化趋势来看,理想状况是每次进行超立方分割时,分配给每个处理单元都有大小为n/p的子数据,做到平均分配,这样的分配状态是最好状态。由前面推导可知分割花费的总时间复杂O((nlog2p)/p)也最小。
因此,在取中心元分割数据时,如果选取的中心元为该数据段的中位数,进行超立方分割分配给每个处理单元的数据就会平均分配,使分割花费的总时间复杂O((nlog2p)/p)也最小。整体算法时间复杂度降低。
本发明提出基于TOP-K分割超立方体模型的并行处理方法总的算法执行的时间为
Figure BSA0000159672060000052
Tp是指任务在有p个节点上运行的总时间。
当(p*log2 2p)/(n*log2n))=O(1)时,求解得p=O(n/log2n)),因此,当节点数等于p时,即把任务平均分配给每个节点,该分配方法是代价最优策略。
以上证明该方法比原超立方体并行处理性能提高。
性能分析与明显效果
并行处理的可扩展性scaleup和加速比speedup是评价并行处理的好坏两个指标,scaleup是指在扩大数据规模的同时,增加计算机的数目后并行处理的性能。scaleup(n)=使用单个节点运行算法处理规模为n问题花费的时间/使用n个节点运行算法处理规模为n问题花费的时间。如果scaleup值随着n的改变,如果一直在1.0附近,或者更低,则表示算法对数据集的大小变化没有影响。
在改进后的基于TOP-K分割超立方体模型的并行处理方法中,由于
Figure BSA0000159672060000053
Figure BSA0000159672060000054
当p趋近n时Tp
Figure BSA0000159672060000055
scaleup(n)=(nT)/Tp值可以化简为
Figure BSA0000159672060000061
改进前的基于超立方体模型并行处理方法
Figure BSA0000159672060000062
Figure BSA0000159672060000063
接下来了从加速比对改进后的方法进行分析,算法加速比speedup(n)=使用单个节点运行算法处理问题花费的时间/使用n个节点运行算法处理问题花费的时间。
所以,
Figure BSA0000159672060000064
当p趋近n时,可以简为
Figure BSA0000159672060000065
该指标表明,随着节点数的增多,该方法运行花费的时间变化趋势。如果能够保持一个线性的增长,则表示多节点并行处理可以很好的缩短所需时间。
根据以上分析基于TOP-K分割超立方体模型的并行处理方法的时间复杂度和可扩展性scaleup和加速比speedup,我们可以得到该方法性能估算表如表2所示。
表2:性能估算表
Figure BSA0000159672060000066
根据表2可以看出改进后方法的时间复杂度变化趋势,如下图2所示。
从图4可以看出,随着规模n的变化,改进后的基于TOP-K分割超立方体模型的并行处理方法的时间复杂度低于改进前的方法的时间复杂度。
根据表2可知,改进后的基于TOP-K分割超立方体模型的并行处理方法的可扩展性scaleup变化趋势如图3所示。改进后方法的scaleup值随着n的改变,由最初的0.8以下变化到1.0附近,呈现由低变高的趋势。则表示方法对数据集的大小变化和处理节点的大小变化,都有很好的适应性。
根据表2可知,改进后的基于TOP-K分割超立方体模型的并行处理方法的加速比speedup变化趋势如图4所示。
从图4可以看出,改进后的基于TOP-K分割超立方体模型的并行处理方法的speedup值随着数据规模n的改变,运行算法花费的时间变化趋势能够保持一个由小到大的近似线性的增长,则表示该方法在处理规模变大的数据时,可以很好的缩短所需时间。
以上所述,仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换均落入本发明的保护范围内。

Claims (1)

1.一种基于TOP-K分割超立方体模型的并行处理方法,其特征在于,
k:自然数k;
TOP-K:第k个大的值;
O(n):时间复杂度为n;
d:递归次数;
Figure RE-FSB0000192669840000011
时间复杂度为log2 2p;
n:数量大小;
p:并行处理单元个数;
包括以下步骤:
步骤1:寻找第k个大的值;
步骤1.1:选取基准值;
步骤1.2:以步骤1.1步选取的基准值做为分界点,把小于基准值的数放在左边,大于基准值的数放在右边;
步骤1.3:判断基准值的位置与k的大小,若基准值的位置等于k,则表明找到了中位数,如果基准值的位置大于k,则在步骤2中进行左边递归运算,如果基准值的位置小于k,则在步骤1.2中进行右边递归运算;
步骤2:由步骤1求出的值即为问题的TOP-K值,以此值作为中心元;并将该中心元广播到所有节点上;依据中心元,将数据分割两部分,随机分配在子超立方节点上;该阶段的时间复杂度为O(n);
步骤3:进过d次递归步骤1,步骤2,原数据分配到子超立方体的节点上;沿第(d-(i-1))维通信链路互联的处理器互联互换数据块进行计算处理;由于最多有
Figure RE-FSB0000192669840000012
个元素需要在节点间发送,由于在第i次迭代广播中心元需要O(d-(i-1))时间;因而,在所有d=log2p次分割中,链路通讯所需的时间为
Figure RE-FSB0000192669840000021
步骤4:建立节点互联互通链路,沿第n维的通信链路互联的节点互联互通;节点标号的第n位为0的(n-1)维子超立方体包含原数据中的特征集,节点标号的第n位为1的(n-1)维子超立方体包含原数据中剩下的数据;根据程序设计目标,每个节点进行计算,由于共有p个节点,数据被平均分配,所以节点上运行的时间复杂度为0((n/p)log2p);
步骤5:每个子立方体递归地对所拥有的子数据进行处理,每个子立方体递归地对所拥有的子数据进行处理,每个节点上的数据处理后进行合并汇总,得出问题求解结果;该阶段有O(n/p)个元素进行合并求解时间复杂度为log2(n/p),最后对每块数据进行串行处理,时间复杂度是O((n/p)log2(n/p));
步骤1.1具体为:
步骤1.1.1:将n个元素划分为
Figure RE-FSB0000192669840000022
个组,每组5个元素,若有剩余作为下次划分凑5个元素的补缺数使用;
步骤1.1.2:找出步骤1.1.1中每一组数中的中位数;
步骤1.1.3:对于步骤1.1.2中找到的所有中位数和步骤1.1.1中的剩余数,进行新的划分为
Figure RE-FSB0000192669840000023
个组,每组5个元素,若有剩余作为下次划分凑5个元素的补缺数使用;
步骤1.1.4:循环调用前三步,求出它们的中位数,作为基准值。
CN201810156673.4A 2018-02-11 2018-02-11 一种基于top-k分割超立方体模型的并行处理方法 Active CN108491187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810156673.4A CN108491187B (zh) 2018-02-11 2018-02-11 一种基于top-k分割超立方体模型的并行处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810156673.4A CN108491187B (zh) 2018-02-11 2018-02-11 一种基于top-k分割超立方体模型的并行处理方法

Publications (2)

Publication Number Publication Date
CN108491187A CN108491187A (zh) 2018-09-04
CN108491187B true CN108491187B (zh) 2021-06-11

Family

ID=63340621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810156673.4A Active CN108491187B (zh) 2018-02-11 2018-02-11 一种基于top-k分割超立方体模型的并行处理方法

Country Status (1)

Country Link
CN (1) CN108491187B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87106067A (zh) * 1986-08-29 1988-03-09 智能机器公司 超大规模计算机
CN106790620A (zh) * 2016-12-30 2017-05-31 许昌学院 一种分布式大数据处理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87106067A (zh) * 1986-08-29 1988-03-09 智能机器公司 超大规模计算机
CN106790620A (zh) * 2016-12-30 2017-05-31 许昌学院 一种分布式大数据处理方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BFPRT (中位数的中位数)算法;BENULL;《CSDN博客 https://blog.csdn.net/qq_32815807/article/details/78183597》;20171009;全文 *
Fast median search: an ANSI C implementation;Nicolas Devillard;《百度学术》;19980731;全文 *
超立方体计算机上的最近点对算法;杨波,庄心谷;《西安电子科技大学学报》;19951230(第04期);全文 *

Also Published As

Publication number Publication date
CN108491187A (zh) 2018-09-04

Similar Documents

Publication Publication Date Title
US9298760B1 (en) Method for shard assignment in a large-scale data processing job
US11055139B2 (en) Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster
CN112235344B (zh) 一种面向分布式机器学习的稀疏通信模型的实现方法
CN112015366B (zh) 数据排序方法、数据排序装置及数据库***
US11221890B2 (en) Systems and methods for dynamic partitioning in distributed environments
WO2017118335A1 (zh) 一种映射方法和设备
US10162830B2 (en) Systems and methods for dynamic partitioning in distributed environments
CN112085644A (zh) 多列数据排序方法、装置、可读存储介质和电子设备
CA3094727C (en) Transaction processing method and system, and server
CN116701001B (zh) 目标任务分配方法、装置、电子设备及存储介质
Durad et al. Performance analysis of parallel sorting algorithms using MPI
CN108182243B (zh) 一种基于Spark的分布式进化算法岛模型并行化方法
CN108491187B (zh) 一种基于top-k分割超立方体模型的并行处理方法
CN111143456B (zh) 基于Spark的Cassandra数据导入方法、装置、设备及介质
US11442792B2 (en) Systems and methods for dynamic partitioning in distributed environments
Lieber et al. Scalable high-quality 1D partitioning
Gao et al. FT-INDEX: A distributed indexing scheme for switch-centric cloud storage system
CN111737347A (zh) 在Spark平台顺序切分数据的方法及装置
CN106997303B (zh) 基于MapReduce的大数据近似处理方法
VanCompernolle et al. Maximum clique solver using bitsets on GPUs
Cinel et al. A distributed heuristic algorithm for the rectilinear steiner minimal tree problem
CN117112145B (zh) 训练模型分配方法、装置、计算机设备和存储介质
CN113052332B (zh) 基于设备均衡原理的分布式模型并行设备分配优化方法
CN113505825B (zh) 一种图计算装置
CN112506652B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231123

Address after: Room 1010, Apartment Office Building, No.14 Xingqing Huafu, Xingqing District, Yinchuan City, Ningxia Hui Autonomous Region, 750000

Patentee after: Ningxia Yifan Weining Technology Co.,Ltd.

Address before: No. n817, 3rd floor, xingguangyingjing, No. 117, Shuiyin Road, Yuexiu District, Guangzhou, Guangdong 510000

Patentee before: Zhiyueyun (Guangzhou) Digital Information Technology Co.,Ltd.

Effective date of registration: 20231123

Address after: No. n817, 3rd floor, xingguangyingjing, No. 117, Shuiyin Road, Yuexiu District, Guangzhou, Guangdong 510000

Patentee after: Zhiyueyun (Guangzhou) Digital Information Technology Co.,Ltd.

Address before: 461000 No. 88 Bayi Road, Henan, Xuchang

Patentee before: XUCHANG University