93,532 research outputs found

    Fast matrix multiplication techniques based on the Adleman-Lipton model

    Full text link
    On distributed memory electronic computers, the implementation and association of fast parallel matrix multiplication algorithms has yielded astounding results and insights. In this discourse, we use the tools of molecular biology to demonstrate the theoretical encoding of Strassen's fast matrix multiplication algorithm with DNA based on an nn-moduli set in the residue number system, thereby demonstrating the viability of computational mathematics with DNA. As a result, a general scalable implementation of this model in the DNA computing paradigm is presented and can be generalized to the application of \emph{all} fast matrix multiplication algorithms on a DNA computer. We also discuss the practical capabilities and issues of this scalable implementation. Fast methods of matrix computations with DNA are important because they also allow for the efficient implementation of other algorithms (i.e. inversion, computing determinants, and graph theory) with DNA.Comment: To appear in the International Journal of Computer Engineering Research. Minor changes made to make the preprint as similar as possible to the published versio

    A connection between circular colorings and periodic schedules

    Get PDF
    AbstractWe show that there is a curious connection between circular colorings of edge-weighted digraphs and periodic schedules of timed marked graphs. Circular coloring of an edge-weighted digraph was introduced by Mohar [B. Mohar, Circular colorings of edge-weighted graphs, J. Graph Theory 43 (2003) 107–116]. This kind of coloring is a very natural generalization of several well-known graph coloring problems including the usual circular coloring [X. Zhu, Circular chromatic number: A survey, Discrete Math. 229 (2001) 371–410] and the circular coloring of vertex-weighted graphs [W. Deuber, X. Zhu, Circular coloring of weighted graphs, J. Graph Theory 23 (1996) 365–376]. Timed marked graphs G→ [R.M. Karp, R.E. Miller, Properties of a model for parallel computations: Determinancy, termination, queuing, SIAM J. Appl. Math. 14 (1966) 1390–1411] are used, in computer science, to model the data movement in parallel computations, where a vertex represents a task, an arc uv with weight cuv represents a data channel with communication cost, and tokens on arc uv represent the input data of task vertex v. Dynamically, if vertex u operates at time t, then u removes one token from each of its in-arc; if uv is an out-arc of u, then at time t+cuv vertex u places one token on arc uv. Computer scientists are interested in designing, for each vertex u, a sequence of time instants {fu(1),fu(2),fu(3),…} such that vertex u starts its kth operation at time fu(k) and each in-arc of u contains at least one token at that time. The set of functions {fu:u∈V(G→)} is called a schedule of G→. Computer scientists are particularly interested in periodic schedules. Given a timed marked graph G→, they ask if there exist a period p>0 and real numbers xu such that G→ has a periodic schedule of the form fu(k)=xu+p(k−1) for each vertex u and any positive integer k. In this note we demonstrate an unexpected connection between circular colorings and periodic schedules. The aim of this note is to provide a possibility of translating problems and methods from one area of graph coloring to another area of computer science

    Sparse Matrix Multiplication on a Field-Programmable Gate Array

    Get PDF
    To extract data from highly sophisticated sensor networks, algorithms derived from graph theory are often applied to raw sensor data. Embedded digital systems are used to apply these algorithms. A common computation performed in these algorithms is finding the product of two sparsely populated matrices. When processing a sparse matrix, certain optimizations can be made by taking advantage of the large percentage of zero entries. This project proposes an optimized algorithm for performing sparse matrix multiplications in an embedded system and investigates how a parallel architecture constructed of multiple processors on a single Field-Programmable Gate Array (FPGA) can be used to speed up computations

    Graphs, Matrices, and the GraphBLAS: Seven Good Reasons

    Get PDF
    The analysis of graphs has become increasingly important to a wide range of applications. Graph analysis presents a number of unique challenges in the areas of (1) software complexity, (2) data complexity, (3) security, (4) mathematical complexity, (5) theoretical analysis, (6) serial performance, and (7) parallel performance. Implementing graph algorithms using matrix-based approaches provides a number of promising solutions to these challenges. The GraphBLAS standard (istc- bigdata.org/GraphBlas) is being developed to bring the potential of matrix based graph algorithms to the broadest possible audience. The GraphBLAS mathematically defines a core set of matrix-based graph operations that can be used to implement a wide class of graph algorithms in a wide range of programming environments. This paper provides an introduction to the GraphBLAS and describes how the GraphBLAS can be used to address many of the challenges associated with analysis of graphs.Comment: 10 pages; International Conference on Computational Science workshop on the Applications of Matrix Computational Methods in the Analysis of Modern Dat

    Equivalence Classes and Conditional Hardness in Massively Parallel Computations

    Get PDF
    The Massively Parallel Computation (MPC) model serves as a common abstraction of many modern large-scale data processing frameworks, and has been receiving increasingly more attention over the past few years, especially in the context of classical graph problems. So far, the only way to argue lower bounds for this model is to condition on conjectures about the hardness of some specific problems, such as graph connectivity on promise graphs that are either one cycle or two cycles, usually called the one cycle vs. two cycles problem. This is unlike the traditional arguments based on conjectures about complexity classes (e.g., P ? NP), which are often more robust in the sense that refuting them would lead to groundbreaking algorithms for a whole bunch of problems. In this paper we present connections between problems and classes of problems that allow the latter type of arguments. These connections concern the class of problems solvable in a sublogarithmic amount of rounds in the MPC model, denoted by MPC(o(log N)), and some standard classes concerning space complexity, namely L and NL, and suggest conjectures that are robust in the sense that refuting them would lead to many surprisingly fast new algorithms in the MPC model. We also obtain new conditional lower bounds, and prove new reductions and equivalences between problems in the MPC model

    Learning Parallel Computations with ParaLab

    Full text link
    In this paper, we present the ParaLab teachware system, which can be used for learning the parallel computation methods. ParaLab provides the tools for simulating the multiprocessor computational systems with various network topologies, for carrying out the computational experiments in the simulation mode, and for evaluating the efficiency of the parallel computation methods. The visual presentation of the parallel computations taking place in the computational experiments is the key feature of the system. ParaLab can be used for the laboratory training within various teaching courses in the field of parallel, distributed, and supercomputer computations

    Fourier Domain Decoding Algorithm of Non-Binary LDPC codes for Parallel Implementation

    Full text link
    For decoding non-binary low-density parity check (LDPC) codes, logarithm-domain sum-product (Log-SP) algorithms were proposed for reducing quantization effects of SP algorithm in conjunction with FFT. Since FFT is not applicable in the logarithm domain, the computations required at check nodes in the Log-SP algorithms are computationally intensive. What is worth, check nodes usually have higher degree than variable nodes. As a result, most of the time for decoding is used for check node computations, which leads to a bottleneck effect. In this paper, we propose a Log-SP algorithm in the Fourier domain. With this algorithm, the role of variable nodes and check nodes are switched. The intensive computations are spread over lower-degree variable nodes, which can be efficiently calculated in parallel. Furthermore, we develop a fast calculation method for the estimated bits and syndromes in the Fourier domain.Comment: To appear in IEICE Trans. Fundamentals, vol.E93-A, no.11 November 201

    Domain/Mesh Decomposition of Unstructured Grids with Pre-Ordering and Smoothing. G.U. Aero Report 9506

    Get PDF
    Increasingly large scale computations are using unstructured discrete computational grids. A typical example is unstructured grid calculations based on finite volume methods (FVM) in computational fluid dynamics (CFD). One of the efficient ways to deal with such large scale problems is parallelization. The present paper will focus on domain/mesh decomposition. This is the first step for distributing unstructured computational domains on a MIMD-type parallel computer system. A graph theory framework for this problem will be constructed. Based on the framework three domain decomposition algorithms: recursive coordinate bisection (RCB), recursive angular bisection (RAB) and recursive graph bisection (RGB), will be introduced, tested and discussed. A pre-ordering and smoothing technique is proposed. It is necessary in the procedure for obtaining a 'good' domain partitioning result. Another interesting method, called the domain decomposition technique (DDT), is also investigated, which is driven in an inverse way, i.e. domain decomposition followed by mesh construction. Finally a simple and direct strategy called the mesh tailor technique (MTT) is discussed. Numerical comparisons using 2D CFD problems will be given. The further research work required to carry out a parallel implementation of a flow problem will be mentioned

    Domain/Mesh Decomposition of Unstructured Grids with Pre-Ordering and Smoothing. G.U. Aero Report 9506

    Get PDF
    Increasingly large scale computations are using unstructured discrete computational grids. A typical example is unstructured grid calculations based on finite volume methods (FVM) in computational fluid dynamics (CFD). One of the efficient ways to deal with such large scale problems is parallelization. The present paper will focus on domain/mesh decomposition. This is the first step for distributing unstructured computational domains on a MIMD-type parallel computer system. A graph theory framework for this problem will be constructed. Based on the framework three domain decomposition algorithms: recursive coordinate bisection (RCB), recursive angular bisection (RAB) and recursive graph bisection (RGB), will be introduced, tested and discussed. A pre-ordering and smoothing technique is proposed. It is necessary in the procedure for obtaining a 'good' domain partitioning result. Another interesting method, called the domain decomposition technique (DDT), is also investigated, which is driven in an inverse way, i.e. domain decomposition followed by mesh construction. Finally a simple and direct strategy called the mesh tailor technique (MTT) is discussed. Numerical comparisons using 2D CFD problems will be given. The further research work required to carry out a parallel implementation of a flow problem will be mentioned

    Fast Local Computation Algorithms

    Full text link
    For input xx, let F(x)F(x) denote the set of outputs that are the "legal" answers for a computational problem FF. Suppose xx and members of F(x)F(x) are so large that there is not time to read them in their entirety. We propose a model of {\em local computation algorithms} which for a given input xx, support queries by a user to values of specified locations yiy_i in a legal output yF(x)y \in F(x). When more than one legal output yy exists for a given xx, the local computation algorithm should output in a way that is consistent with at least one such yy. Local computation algorithms are intended to distill the common features of several concepts that have appeared in various algorithmic subfields, including local distributed computation, local algorithms, locally decodable codes, and local reconstruction. We develop a technique, based on known constructions of small sample spaces of kk-wise independent random variables and Beck's analysis in his algorithmic approach to the Lov{\'{a}}sz Local Lemma, which under certain conditions can be applied to construct local computation algorithms that run in {\em polylogarithmic} time and space. We apply this technique to maximal independent set computations, scheduling radio network broadcasts, hypergraph coloring and satisfying kk-SAT formulas.Comment: A preliminary version of this paper appeared in ICS 2011, pp. 223-23
    corecore