摘要
逻辑异或和前缀异或是基本的逻辑运算 ,经常应用于各种算法中 .该文在规模为 N× N的可重构造网孔机器上提出了求 N个逻辑位的并行异或和并行前缀异或算法 ,其运行时间均为常数 .基于该并行异或算法 ,文中还提出了相同的模型下在常数时间判定一给定点是否在 N条边构成的平面多边形中和判定一给定点是否在 N个平面构成的空间多面体中的并行算法 .就实质而言 ,这些算法都是相应问题的第一个处理器数为线性。
Exclusive OR (EXOR) is a basic logic operation and often included in various algorithms. It needs Ω(log N ) time on PRAM CREW(Parallel Random Access Machine Concurrent Read and Exclusive Write), Ω(log N /loglog N ) time on PRAM CRCW(PRAM Concurrent Read and Concurrent Write) with arbitrary processors, and O(N) time on N×N meshes to determine the EXOR of N logic bits. R. Miller et al . proposed two parallel EXOR algorithms which run on N×N and N×N reconfigurable meshes, in time O(1) and O (loglog N ) respectively. This paper presents an interconnection pattern among the processors of a 3×3 N reconfigurable mesh, which can determine the EXOR and the prefix EXOR of the N logic bits in O(1) time when each processor in an arbitrary row of the reconfigurable mesh contains one bit. Based on this pattern, a parallel EXOR and a prefix EXOR algorithm of N logic bits are proposed which run in O(1) time and on a N×N reconfigurable mesh when each processor of the reconfigurable mesh contains one bit. A number of applications in computer aided manufacturing, CAD, and computer aided geometric design ask for testing whether a given point is in a polygon or a polyhedron. As an application of the parallel EXOR algorithm, this paper also proposes two parallel algorithms running in O(1) time and on the same model to test whether a given point is in a polygon with N edges and in a polyhedron with N planes respectively. To our best knowledge, these are all the first parallel algorithms running in O(1) time and with linear processors for above problems respectively.
出处
《计算机学报》
EI
CSCD
北大核心
2002年第1期9-15,共7页
Chinese Journal of Computers
基金
国家"九七三"重点基础研究发展规划项目基金 (G19980 3 0 40 3 )资助