【24h】

Sorting sixteen numbers

机译:排序十六个数字

获取原文

摘要

Sorting is a basic operation in data processing. A common direction in research is to design fast methods that sort millions of numbers. The focus of this article is to sort 16 numbers. Let a hextuple be an unordered tuple of 16 numbers. Although the data may consist of thousands to millions of hextuples, the task is to sort the numbers in each hextuple. GPUs have become powerful coprocessors to CPUs. Sorting networks, originally meant for hardware implementation, are suitable for sorting many hextuples on GPUs. Batcher's sorting network for 16 numbers has ten parallel steps, whereas Van Voorhis's network has nine. Software implementations of the former are well-known and publicly available, whereas the latter seems to remain on paper. The main results in this article are implementations of Van Voorhis's network. After several iterations of improvement, the final implementation of Van Voorhis's network is more than ten percent faster than the existing code for Batcher's network. Insights gained in implementing Van Voorhis's network lead to an improved implementation of Batcher's network. The last result is useful for sorting more than 16 numbers.
机译:排序是数据处理中的基本操作。研究的一个共同方向是设计可以对数百万个数进行排序的快速方法。本文的重点是对16个数字进行排序。假设十六进制为16个数字的无序元组。尽管数据可能包含数千到几百万个六联体,但任务是对每个六元组中的数字进行排序。 GPU已成为CPU的强大协处理器。最初用于硬件实现的排序网络适用于在GPU上对许多六边形进行排序。 Batcher的16个数字分拣网络有10个并行步骤,而Van Voorhis的网络有9个并行步骤。前者的软件实现是众所周知的,并且是公开可用的,而后者似乎仍保留在纸上。本文的主要结果是Van Voorhis网络的实现。经过多次改进,Van Voorhis网络的最终实现比Batcher网络的现有代码快10%以上。在实施Van Voorhis网络方面获得的见识导致对Batcher网络的改进实施。最后的结果对于排序16个以上的数字很有用。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号