【24h】

Improving the Average Delay of Sorting

机译:改善平均排序延迟

获取原文
获取原文并翻译 | 示例

摘要

In previous work we have introduced an average case measure for the time complexity of Boolean circuits - that is the delay between feeding the input bits into a circuit and the moment when the results are ready at the output gates - and analysed this complexity measure for prefix computations. Here we consider the problem to sort large integers that are given in binary notation. Contrary to a word comparator sorting circuit C where a basic computational element, a comparator, is charged with a single time step to compare two elements, in a bit comparator circuit C a comparison of two binary numbers has to be implemented by a Boolean subcircuit CM called comparator module that is built from Boolean gates of bounded fanin. Thus, compared to C, the depth of C' will be larger by a factor up to the depth of CM. Our goal is to minimize the average delay of bit comparator sorting circuits. The worst-case delay can be estimated by the depth of the circuit. For this worst-case measure two topologically quite different designs seems to be appropriate for the comparator modules: a tree-like one if the inputs are long numbers, otherwise a linear array working in a pipelined fashion. Inserting these into a word comparator circuit we get bit level sorting circuits for binary numbers of length to for which the depth is either increased by a multiplicative factor of oder log m or by an additive term of order m. We show that this obvious solution can be improved significantly by constructing efficient sorting and merging circuits for the bit model that only suffer a constant factor time loss on the average if the inputs are uniformly distributed. This is done by designing suitable hybrid architectures of tree compaction and pipelining. These results can also be extended to classes of nonuniform distributions if we put a bound on the complexity of the distributions themselves.
机译:在先前的工作中,我们介绍了布尔电路时间复杂度的平均情况度量(即将输入位馈送到电路中和输出门准备好结果之间的延迟),并分析了此复杂度度量的前缀计算。在这里,我们考虑将二进制整数形式的大整数排序的问题。与字比较器排序电路C相反,在字比较器排序电路C中,一个基本的计算元素即比较器仅需一个时间步就可以比较两个元素,而在位比较器电路C中,两个二进制数的比较必须由布尔子电路CM来实现称为比较器模块,该模块是由有限范宁的布尔门构建的。因此,与C相比,C'的深度将增大至CM的深度。我们的目标是最小化位比较器排序电路的平均延迟。最坏情况下的延迟可以通过电路的深度来估计。对于这种最坏的情况,比较器模块似乎需要两种拓扑上完全不同的设计:如果输入是长数字,则为树状设计;否则,以流水线方式工作的线性阵列。将这些插入到字比较器电路中,就得到了二进制位长度的比特级排序电路,其深度以乘数log m的乘数或以阶m的加法项增加。我们表明,通过为位模型构建有效的排序和合并电路,可以有效地改善这种明显的解决方案,如果输入是均匀分布的,则平均而言,这些电路平均只会遭受恒定的因子时间损失。这是通过设计合适的树压缩和流水线混合架构来完成的。如果我们限制分布本身的复杂性,那么这些结果还可以扩展到非均匀分布的类。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号