当前位置:
X-MOL 学术
›
arXiv.cs.DS
›
论文详情
Our official English website, www.x-mol.net, welcomes your
feedback! (Note: you will need to create a separate account there.)
Searching and Sorting with O(n^2) processors in O(1) time
arXiv - CS - Data Structures and Algorithms Pub Date : 2020-11-23 , DOI: arxiv-2011.11144 Taeyoung An, A. Yavuz Oruc
arXiv - CS - Data Structures and Algorithms Pub Date : 2020-11-23 , DOI: arxiv-2011.11144 Taeyoung An, A. Yavuz Oruc
The proliferation of number of processing elements (PEs) in parallel computer
systems, along with the use of more extensive parallelization of algorithms
causes the interprocessor communications dominate VLSI chip space. This paper
proposes a new architecture to overcome this issue by using simple crosspoint
switches to pair PEs instead of a complex interconnection network. Based on the
cyclic permutation wiring idea described in \cite{oruc2016self}, this pairing
leads to a linear crosspoint array of $n(n-1)/2$ processing elements and as
many crosspoints. We demonstrate the versatility of this new parallel
architecture by designing fast searching and sorting algorithms for it. In
particular, we show that finding a minimum, maximum, and searching a list of
$n$ elements can all be performed in $O(1)$ time with elementary logic gates
with $O(n)$ fan-in, and in $O(\lg n)$ time with $O(1)$ fan-in. We further show
that sorting a list of $n$ elements can also be carried out in $O(1)$ time
using elementary logic gates with $O(n)$ fan-in and threshold logic gates. The
sorting time increases to $O(\lg n\lg\lg n)$ if only elementary logic gates
with $O(1)$ fan-in are used. The algorithm can find the maximum among $n$
elements in $O(1)$ time, and sort $n$ elements in $O(\lg n (\lg\lg n))$ time.
In addition, we show how other fundamental queries can be handled within the
same order of time complexities.
中文翻译:
在O(1)时间内使用O(n ^ 2)个处理器进行搜索和排序
并行计算机系统中处理元件(PE)数量的激增,以及使用更广泛的算法并行化导致处理器间通信在VLSI芯片空间中占主导地位。本文提出了一种新的体系结构,可以通过使用简单的交叉点交换机将PE配对而不是使用复杂的互连网络来解决此问题。根据\ cite {oruc2016self}中描述的循环置换连线思想,此配对将导致一个线性交叉点数组,其中包含$ n(n-1)/ 2 $个处理元素和许多交叉点。我们通过为其设计快速搜索和排序算法来证明这种新的并行体系结构的多功能性。特别是,我们表明找到最小,最大,搜索$ n $元素的列表都可以在$ O(1)$时间使用扇形输入$ O(n)$进行基本逻辑门,而在$ O(\ lg n)$时间使用$ O执行(1)$扇入。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。
更新日期:2020-11-25
中文翻译:
在O(1)时间内使用O(n ^ 2)个处理器进行搜索和排序
并行计算机系统中处理元件(PE)数量的激增,以及使用更广泛的算法并行化导致处理器间通信在VLSI芯片空间中占主导地位。本文提出了一种新的体系结构,可以通过使用简单的交叉点交换机将PE配对而不是使用复杂的互连网络来解决此问题。根据\ cite {oruc2016self}中描述的循环置换连线思想,此配对将导致一个线性交叉点数组,其中包含$ n(n-1)/ 2 $个处理元素和许多交叉点。我们通过为其设计快速搜索和排序算法来证明这种新的并行体系结构的多功能性。特别是,我们表明找到最小,最大,搜索$ n $元素的列表都可以在$ O(1)$时间使用扇形输入$ O(n)$进行基本逻辑门,而在$ O(\ lg n)$时间使用$ O执行(1)$扇入。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。我们进一步表明,使用具有$ O(n)$扇入和阈值逻辑门的基本逻辑门,也可以在$ O(1)$时间内对$ n $元素列表进行排序。如果仅使用带有$ O(1)$扇入的基本逻辑门,则排序时间将增加到$ O(\ lg n \ lg \ lg n)$。该算法可以在$ O(1)$时间中找到$ n $个元素中的最大值,并在$ O(\ lg n(\ lg \ lg n))$个时间中对$ n $个元素进行排序。此外,我们展示了如何在相同的时间复杂度顺序内处理其他基本查询。