[发明专利]一种归并排序方法及装置有效
申请号: | 202110256890.2 | 申请日: | 2021-03-09 |
公开(公告)号: | CN112947890B | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 鄢贵海;卢文岩;孔浩 | 申请(专利权)人: | 中科驭数(北京)科技有限公司 |
主分类号: | G06F7/36 | 分类号: | G06F7/36 |
代理公司: | 北京开阳星知识产权代理有限公司 11710 | 代理人: | 唐博 |
地址: | 100094 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 归并 排序 方法 装置 | ||
本发明实施例提供了一种归并排序方法及装置,涉及数据处理技术领域。该方法包括:获取待归并排序数据形成的有序序列的数量;判断有序序列的数量与CAS的数量是否满足预设条件;若是,则对各有序序列进行分段,获取各有序序列的数据分段;通过CAS对每一个序列组中的有序序列的数据分段进行归并排序,获取每一个序列组对应的排序分段,任一序列组包括待归并排序的两个有序序列;按照归并排序的单调性要求,对每一个序列组对应的各排序分段进行排序,生成每一个序列组的归并排序结果。本发明实施例用于提升硬件资源利用率,以提升归并排序效率。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种归并排序方法及装置。
背景技术
随着科学技术的飞速发展,大数据储量规模持续保持40%左右的增长率,数据的爆炸式增长对数据处理带来了巨大的挑战。
归并排序作为数据处理中最为基础且应用最为广泛的操作之一,在数据处理中具有非常重要的作用。归并排序算法的基本原理为:通过比较交换单元(Compare and Swap,CAS)对两组有序序列中的数据进行比较,并输出较小或较大的数据,以获取该两组有序序列的归并排序结果。针对数据规模动态变化的待归并排序数据,现有解决方法为基于CAS构建归并树。归并树的每个父节点均包括两个子节点,父节点的输入为两个子节点对数据进行归并排序后输出的归并排序结果(有序序列),归并树的叶子节点输入的是初始数据序列中的各数据或有序序列,归并树的根节点的输出为全部输入的最终归并排序结果。然而,归并树的硬件资源利用率很低,CAS在大多数时间处于空闲状态。例如:在一个包括4层的归并树通道中,当将原始数据输入该通道的第1层时,第1层的CAS处于工作状态时,该通道的第2、3、4层的CAS处于空闲状态,当第1层将归并结果输入该通道的第2层后,第2层的CAS处于工作状态时,该通道的第1、3、4层的CAS又会处于空闲状态。即,在归并树的一个通道中,同时只有一层的CAS处于工作状态,其它层的CAS均处于空闲状态,硬件资源利用率较低,而硬件资源利用率直接决定了归并排序的效率,因此如何提升硬件资源利用率,以提升归并排序效率是一个亟待解决的问题。
发明内容
有鉴于此,本发明提供了一种归并排序方法及装置,用于提升硬件资源利用率,以提升归并排序效率。
为了实现上述目的,本发明实施例提供技术方案如下:
第一方面,本发明的实施例提供一种归并排序方法,包括:
获取待归并排序数据形成的有序序列的数量;
判断所述有序序列的数量与比较交换单元CAS的数量是否满足预设条件;
若是,则对各有序序列进行分段,获取各有序序列的数据分段;
通过所述CAS对每一个序列组中的有序序列的数据分段进行归并排序,获取每一个序列组对应的排序分段,任一序列组包括待归并排序的两个有序序列;
按照归并排序的单调性要求,对每一个序列组对应的各排序分段进行排序,生成每一个序列组的归并排序结果。
作为本发明实施例一种可选的实施方式,所述对各有序序列进行分段,包括:
将每一个序列组中的第一有序序列均等的划分为N个第一数据分段,N为大于1的整数;
根据各第一数据分段的边界值,将各第一数据分段对应的第二有序序列划分为至少一个第二数据分段;
其中,任一第一数据分段对应的第二有序序列为划分得到该第一数据分段的第一有序序列所属的序列组中的另一个有序序列。
作为本发明实施例一种可选的实施方式,所述通过所述CAS对每一个序列组中的有序序列的数据分段进行归并排序,包括:
通过所述CAS对各第一数据分段和对应的第二数据分段进行归并排序,获取各数据分段的归并排序结果;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科驭数(北京)科技有限公司,未经中科驭数(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110256890.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:旋流扰动装置及换热管结构
- 下一篇:一种高速公路绿化树木修剪装置