338 research outputs found

    Parallel Fast Multipole Method for Molecular Dynamics

    Get PDF
    We report on a parallel version of the Fast Multipole Method (FMM) implemented in the classical molecular dynamics code, NAMD (Not Another Molecular Dynamics program). This novel implementation of FMM aims to minimize interprocessor communication through the modification of the FMM grid to match the hybrid force and spatial decomposition scheme already present in NAMD. This new implementation has the benefit of replacing all-to-all communications broadcasts with direct communications between nearest neighbors. This results in a significant reduction in the amount of communication compared to earlier attempts to integrate FMM into common molecular dynamics programs. The early performance of FMM is similar to the existing electrostatics methods already in NAMD. In addition, tests of the stability and accuracy of the FMM algorithm in molecular dynamics as applied to several common solvated protein structures are discussed

    Compiler and Runtime for Memory Management on Software Managed Manycore Processors

    Get PDF
    abstract: We are expecting hundreds of cores per chip in the near future. However, scaling the memory architecture in manycore architectures becomes a major challenge. Cache coherence provides a single image of memory at any time in execution to all the cores, yet coherent cache architectures are believed will not scale to hundreds and thousands of cores. In addition, caches and coherence logic already take 20-50% of the total power consumption of the processor and 30-60% of die area. Therefore, a more scalable architecture is needed for manycore architectures. Software Managed Manycore (SMM) architectures emerge as a solution. They have scalable memory design in which each core has direct access to only its local scratchpad memory, and any data transfers to/from other memories must be done explicitly in the application using Direct Memory Access (DMA) commands. Lack of automatic memory management in the hardware makes such architectures extremely power-efficient, but they also become difficult to program. If the code/data of the task mapped onto a core cannot fit in the local scratchpad memory, then DMA calls must be added to bring in the code/data before it is required, and it may need to be evicted after its use. However, doing this adds a lot of complexity to the programmer's job. Now programmers must worry about data management, on top of worrying about the functional correctness of the program - which is already quite complex. This dissertation presents a comprehensive compiler and runtime integration to automatically manage the code and data of each task in the limited local memory of the core. We firstly developed a Complete Circular Stack Management. It manages stack frames between the local memory and the main memory, and addresses the stack pointer problem as well. Though it works, we found we could further optimize the management for most cases. Thus a Smart Stack Data Management (SSDM) is provided. In this work, we formulate the stack data management problem and propose a greedy algorithm for the same. Later on, we propose a general cost estimation algorithm, based on which CMSM heuristic for code mapping problem is developed. Finally, heap data is dynamic in nature and therefore it is hard to manage it. We provide two schemes to manage unlimited amount of heap data in constant sized region in the local memory. In addition to those separate schemes for different kinds of data, we also provide a memory partition methodology.Dissertation/ThesisPh.D. Computer Science 201

    Local Binary Patterns in Focal-Plane Processing. Analysis and Applications

    Get PDF
    Feature extraction is the part of pattern recognition, where the sensor data is transformed into a more suitable form for the machine to interpret. The purpose of this step is also to reduce the amount of information passed to the next stages of the system, and to preserve the essential information in the view of discriminating the data into different classes. For instance, in the case of image analysis the actual image intensities are vulnerable to various environmental effects, such as lighting changes and the feature extraction can be used as means for detecting features, which are invariant to certain types of illumination changes. Finally, classification tries to make decisions based on the previously transformed data. The main focus of this thesis is on developing new methods for the embedded feature extraction based on local non-parametric image descriptors. Also, feature analysis is carried out for the selected image features. Low-level Local Binary Pattern (LBP) based features are in a main role in the analysis. In the embedded domain, the pattern recognition system must usually meet strict performance constraints, such as high speed, compact size and low power consumption. The characteristics of the final system can be seen as a trade-off between these metrics, which is largely affected by the decisions made during the implementation phase. The implementation alternatives of the LBP based feature extraction are explored in the embedded domain in the context of focal-plane vision processors. In particular, the thesis demonstrates the LBP extraction with MIPA4k massively parallel focal-plane processor IC. Also higher level processing is incorporated to this framework, by means of a framework for implementing a single chip face recognition system. Furthermore, a new method for determining optical flow based on LBPs, designed in particular to the embedded domain is presented. Inspired by some of the principles observed through the feature analysis of the Local Binary Patterns, an extension to the well known non-parametric rank transform is proposed, and its performance is evaluated in face recognition experiments with a standard dataset. Finally, an a priori model where the LBPs are seen as combinations of n-tuples is also presentedSiirretty Doriast

    Parallel Nonnegative Matrix Factorization Algorithms for Hyperspectral Images

    Get PDF
    Hyperspectral imaging is a branch of remote sensing which deals with creating and processing aerial or satellite pictures that capture wide range of wavelengths, most of which are invisible to the naked eye. Hyperspectral images are composed of many bands, each corresponding to certain light frequencies. Because of their complex nature, image processing tasks such as feature extraction can be resource and time consuming. There are many unsupervised extraction methods available. A recently investigated one is Nonnegative Matrix Factorization (NMF), a method that given positive linear matrix of positive sources, attempts to recover them. In this thesis we designed, implemented and tested parallel versions of two popular iterative NMF algorithms: one based on multiplicative updates, and another on alternative gradient computation. Our algorithms are designed to leverage the multi-processor SMP architecture and power of threading to evenly distribute the workload among the available CPU’s and improve the performance as compared to their sequential counterparts. This work could be used as a basis for creating even more powerful distributed algorithms that would work on clustered architectures. The experiments show a speedup in both algorithms without reduction in accuracy. In addition, we have also developed a java based framework offering reading and writing tools for various hyperspectral image types, as well as visualization tools, and a graphical user interface to launch and control the factorization processes

    Embedded System Design

    Get PDF
    A unique feature of this open access textbook is to provide a comprehensive introduction to the fundamental knowledge in embedded systems, with applications in cyber-physical systems and the Internet of things. It starts with an introduction to the field and a survey of specification models and languages for embedded and cyber-physical systems. It provides a brief overview of hardware devices used for such systems and presents the essentials of system software for embedded systems, including real-time operating systems. The author also discusses evaluation and validation techniques for embedded systems and provides an overview of techniques for mapping applications to execution platforms, including multi-core platforms. Embedded systems have to operate under tight constraints and, hence, the book also contains a selected set of optimization techniques, including software optimization techniques. The book closes with a brief survey on testing. This fourth edition has been updated and revised to reflect new trends and technologies, such as the importance of cyber-physical systems (CPS) and the Internet of things (IoT), the evolution of single-core processors to multi-core processors, and the increased importance of energy efficiency and thermal issues
    • …
    corecore