- Research Article
13
- 10.1016/0030-3992(94)90113-9
Order statistics on optically interconnected multiprocessor systems
- Aug 01, 1994
- Optics & Laser Technology
- Y Pan
Order statistics on optically interconnected multiprocessor systems
This paper examines the computing power of optical parallel computer systems. We consider the proposed Array of Processors with optical Pipelined Buses (APPB) in particular, where processors communicate with each other via a spanning optical bus. APPB allow simultaneous access by multiple processors to the optical bus through message pipelining, thus overcoming the bottlenecks caused by exclusive access when employing electronic buses. We give an overview of this model of parallel computation, and then examine the computing power of APPB by demonstrating its capability to efficiently emulate the CRCW PRAM model. We show that an APPB is almost as powerful as a CRCW PRAM. That is, an APPB can emulate a CRCW PRAM with only a small degradation in time performance.
Order statistics on optically interconnected multiprocessor systems
Order statistics on optically interconnected multiprocessor systems
Fast and highly scalable parallel computations for fundamental matrix problems on distributed memory systems
We present fast and highly scalable parallel computations for a number of important and fundamental matrix problems on distributed memory systems (DMS). These problems include matrix multiplication, matrix chain product, and computing the powers, the inverse, the characteristic polynomial, the determinant, the rank, the Krylov matrix, and an LU- and a QR-factorization of a matrix, and solving linear systems of equations. Our highly scalable parallel computations for these problems are based on a highly scalable implementation of the fastest sequential matrix multiplication algorithm on DMS. We show that compared with the best known parallel time complexities on parallel random access machines (PRAM), the most powerful but unrealistic shared memory model of parallel computing, our parallel matrix computations achieve the same speeds on distributed memory parallel computers (DMPC), and have an extra polylog factor in the time complexities on DMS with hypercubic networks. Furthermore, our parallel matrix computations are fully scalable on DMPC and highly scalable over a wide range of system size on DMS with hypercubic networks. Such fast (in terms of parallel time complexity) and highly scalable (in terms of our definition of scalability) parallel matrix computations were rarely seen before on any distributed memory systems.
Read moreHigh-Performance Real-World Optical Computing Trained by in Situ Gradient-Based Model-Free Optimization.
Optical computing systems provide high-speed and low-energy data processing but face deficiencies in computationally demanding training and simulation-to-reality gaps. We propose a gradient-based model-free optimization (G-MFO) method based on a Monte Carlo gradient estimation algorithm for computationally efficient in situ training of optical computing systems. This approach treats an optical computing system as a black box and back-propagates the loss directly to the optical computing weights' probability distributions, circumventing the need for a computationally heavy and biased system simulation. Our experiments on diffractive optical computing systems show that G-MFO outperforms hybrid training on the MNIST and FMNIST datasets. Furthermore, we demonstrate image-free and high-speed classification of cells from their marker-free phase maps. Our method's model-free and high-performance nature, combined with its low demand for computational resources, paves the way for accelerating the transition of optical computing from laboratory demonstrations to practical, real-world applications.
Read moreAn optimal parallel algorithm for the vertical segment visibility reporting problem
In this paper, we present a parallel algorithm for solving the all-pairs vertical segment visibility reporting (SVR) problem. Given a set S={S0, S1,...,Sn−1} of disjoint vertical segments in the plane, the SVR problem asks for the determination and reporting of all the distinct visibility pairs. Our algorithm solves the SVR problem in O(log n) time using O(n) space and O(n) processors on a CREW PRAM (Concurrent Read Exclusive Write Parallel Random Access Machine) computational model.
Read moreBeyond Parallel Random-Access Machines
The fundamental paradigm in theoretical computer science is to propose a formal model of computation, and then to analyze the complexity of different problems in the model. However, if the model fails to reflect constraints in the real world, these analyses have limited practical importance. The parallel random-access machine (PRAM) is by far the most popular model of parallel computation. Hundreds of algorithms have been designed for the PRAM. Yet, the PRAM ignores contraints on communication imposed by modern electronic packaging technology.
Read moreOn the capacity of MIMO optical communication bus system
With the rapid growth in the number of applications served by the microprocessor in the electronic device, brings the significant challenges such as response time, bit error probability, computational complexity etc. In order to replace the existing electrical technology due to its delay prone and huge energy loss, optical technology can be adopted because of reliability, high data speed, and low interference. This paper introduces the new concept to improve the overall capacity of the optical system. Multiple input multiple output (MIMO) is adopted to improve the diversity and reduce error in transmission. The analysis is based on the transceivers location and channel gain in the optical bus. Scattering effect for different wavelength rays is also analyzed in unguided optical bus environment.
Read moreComponents and Technologies
The next generation of advances in computer throughput and capability can be achieved only by algorithmic and architectural innovations and by exploiting parallelism and concurrency. In this context, optical computing offers intrinsic massive parallelism, high speed and low power dissipation. Realization of those advantages requires technologies for optical and optoelectronic devices and materials. Whether optics will be an alternative or a complement to electronics for computing depends to a large extent on the technological advances in optical devices and materials. Architectural considerations for optical computing also depend on novel devices and materials. Optical computing requires light sources, detectors, switches and optical refractive, reflective and diffractive components. These devices should have distinct characteristics and should also be compatible with electronic VLSI technologies. Optoelectronic and photonic technologies are a fast-growing area in the industries related to optical fiber communications, optical disk memories, optoelectronic displays, laser printers, fax machines and photocopiers. There have also been significant advances in particular devices and materials for optical analog, digital, parallel and neural computing. A remarkable technological advance is the application of electronic VLSI fabrication technologies into optics and optoelectronics, resulting in new devices and new technologies such as multiple quantum well effect devices, binary optics, micro optic components, etc. In what follows, we will examine recent developments of the major optical and optoelectronic devices and materials for optical computing.
Read moreThe Research on Parallel Algorithm of A-order in Binary Tree Based on PRAM Model
In this paper, the problem of A-order of binary tree is studied with the PRAM(Parallel Random Access Machine) model of parallel computation and a parallel algorithm for A-order of binary tree is proposed. The process of the parallel algorithm is proceed with detailed description and verified analysis with an application instance. The parallel algorithm of A-order of binary tree provides using and reference for applying it to binary tree traverse sequence and solving the parallelism problem of application program.
Read moreParallel Breadth-first and Breadth-depth traversals of general trees
Two adaptive, level-order tree traversal algorithms are proposed for an exclusive-read and exclusive-write (EREW), parallel random access machine (PRAM) model of computation. Our breadth-first traversal algorithm for a general tree with n nodes achieves O((n/p)*log n /log(n/p)) time complexity using p processors on the EREW model, and hence it attains optimal speedup for p ≤ n1 − e, where 0 < e ≤ 1. This algorithm performs better (in terms of processor-time product) than an existing algorithm [12] which has O(k log n) time complexity using O(n1 + 1/k) processors on a concurrent-read and exclusive-write (CREW), PRAM model. The proposed breadth-depth algorithm for traversing a general tree requires O(n/p + log n) time on the EREW model, and thus it achieves optimal speedup for p ≤ n/log n. This algorithm provides a significant improvement over an existing parallel breadth-depth algorithm [4] which requires O(log n) time with O(n2) processors on CREW model. Our breadth-first traversal algorithm uses an Euler tour technique [20], and a list construction technique which is similar to the one used in [18] for solving the adjacency list construction problem for graphs. The breadth-depth traversal algorithm, on the other hand, is based on a special characterization which enables the reduction of this problem into a variety of list ranking problems.
Read moreRecursive Star-Tree Parallel Data Structure
This paper introduces a novel parallel data structure called the recursive star-tree (denoted “${}^ * $-tree”). For its definition a generalization of the $ * $ functional is used (where for a function $f * f(n) = \min \{ {i|f^{(i)} (n) \leqslant 1} \}$ and $f^{(i)} $ is the ith iterate of f). Recursive ${}^ * $-trees are derived by using recursion in the spirit of the inverse Ackermann function. The recursive ${}^ * $-tree data structure leads to a new design paradigm for parallel algorithms. This paradigm allows for extremely fast parallel computations, specifically, $O(\alpha (n))$ time (where $\alpha (n)$ is the inverse of the Ackermann function), using an optimal number of processors on the (weakest) concurrent-read, concurrent-write parallel random-access machine (CRCW PRAM). These computations need only constant time, and use an optimal number of processors if the following nonstandard assumption about the model of parallel computation is added to the CRCW PRAM: an extremely small number of processors each can write simultaneously into different bits of the same word. Applications include finding lowest common ancestors in trees by a new algorithm that is considerably simpler than the known algorithms for the problem, restricted domain merging, parentheses matching, and a new parallel reducibility.
Read moreGraph Connectivity in Log Steps Using Label Propagation
The fastest deterministic algorithms for connected components take logarithmic time and perform superlinear work on a Parallel Random Access Machine (PRAM). These algorithms maintain a spanning forest by merging and compressing trees, which requires pointer-chasing operations that increase memory access latency and are limited to shared-memory systems. Many of these PRAM algorithms are also very complicated to implement. Another popular method is “leader-contraction” where the challenge is to select a constant fraction of leaders that are adjacent to a constant fraction of non-leaders with high probability, but this can require adding more edges than were in the original graph. Instead we investigate label propagation because it is deterministic, easy to implement, and does not rely on pointer-chasing. Label propagation exchanges representative labels within a component using simple graph traversal, but it is inherently difficult to complete in a sublinear number of steps. We are able to overcome the problems with label propagation for graph connectivity. We introduce a surprisingly simple framework for deterministic, undirected graph connectivity using label propagation that is easily adaptable to many computational models. It achieves logarithmic convergence independently of the number of processors and without increasing the edge count. We employ a novel method of propagating directed edges in alternating direction while performing minimum reduction on vertex labels. We present new algorithms in PRAM, Stream, and MapReduce. Given a simple, undirected graph [Formula: see text] with [Formula: see text] vertices, [Formula: see text] edges, our approach takes O(m) work each step, but we can only prove logarithmic convergence on a path graph. It was conjectured by Liu and Tarjan (2019) to take [Formula: see text] steps or possibly [Formula: see text] steps. Our experiments on a range of difficult graphs also suggest logarithmic convergence. We leave the proof of convergence as an open problem.
Read moreNon-uniform image deblurring using an optical computing system
Non-uniform image deblurring using an optical computing system
Efficient parallel and distributed topological sort algorithms
In this paper, we give efficient parallel and distributed algorithms for the topological sort problem on acyclic graphs with n vertices. Our parallel algorithm solves the problem on a CREW PRAM in O(log/sup 2/ n) time with O(M(n)/log n) processors, where M(n) denotes the number of processors needed to multiply two n/spl times/n integer matrices over the integer ring. The best known upper bound of M(n) is O(n/sup 2.376/). The parallel algorithm can also solve the problem on processor arrays with reconfigurable bus systems in O(1) time and O(n/sup 3/) processors. Our distributed algorithm solves the topological sort problem of an arbitrary asynchronous network with communication complexity O(n/sup 2/).
Read moreModels of parallel computation and optical computing
Theoretical models of computation (automata, Turing machines, random access machines, etc.) define not only what is computable but determine how much time and/or space is required for a computation. The parallel extensions of the sequential models usually offer significant speedup in algorithm execution (not all algorithms can be parallelized, however). Real parallel computer architectures based on these parallel computation models should exhibit the same algorithmic speedup. A complexity hierarchy can be defined for parallel computation models based on the space and/or time speedup of certain classes of algorithms. In particular the parallel shared memory models1 are some of the more powerful of the parallel computation models. Their close resemblance to actual computer architectures provide guidance for real architectural design and their massive interconnection requirements are well suited for implementation in optical computing architectures. In addition, the shared memory models have recently been shown to simulate deterministic Boltzmann machines and threshold-logic Turing machines. Thus optical machines based on these parallel models can potentially exhibit the computational power of the shared memory models. These parallel computation models and their implications for optical computing are discussed.
Read moreAlgorithms for finding and updating minimum-depth spanning trees in parallel
Algorithms for finding and updating minimum-depth spanning trees in parallel