275 research outputs found

    The Integration of Task and Data Parallel Skeletons

    Full text link
    We describe a skeletal parallel programming library which integrates task and data parallel constructs within an API for C++. Traditional skeletal requirements for higher orderness and polymorphism are achieved through exploitation of operator overloading and templates, while the underlying parallelism is provided by MPI. We present a case study describing two algorithms for the travelling salesman problem

    SBASCO: skeleton-based scientific components

    Full text link

    A case study of hardware and software synthesis in ForSyDe

    Get PDF

    Integrating Task and Data Parallelism with the Collective Communication Archetype

    Get PDF
    A parallel program archetype aids in the development of reliable, efficient parallel applications with common computation/communication structures by providing stepwise refinement methods and code libraries specific to the structure. The methods and libraries help in transforming a sequential program into a parallel program via a sequence of refinement steps that help maintain correctness while refining the program to obtain the appropriate level of granularity for a target machine. The specific archetype discussed here deals with the integration of task and data parallelism by using collective (or group) communication. This archetype has been used to develop several applications

    Research in progress in applied mathematics, numerical analysis, fluid mechanics, and computer science

    Get PDF
    This report summarizes research conducted at the Institute for Computer Applications in Science and Engineering in applied mathematics, fluid mechanics, and computer science during the period October 1, 1993 through March 31, 1994. The major categories of the current ICASE research program are: (1) applied and numerical mathematics, including numerical analysis and algorithm development; (2) theoretical and computational research in fluid mechanics in selected areas of interest to LaRC, including acoustics and combustion; (3) experimental research in transition and turbulence and aerodynamics involving LaRC facilities and scientists; and (4) computer science

    Runtime Coupling of Data-parallel Programs

    Get PDF
    We consider the problem of efficiently coupling multiple data-parallel programs at runtime. We propose an approach that establishes a mapping between data structures in different data-parallel programs and implements a user specified consistency model. Mappings are established at runtime and new mappings between programs can be added and deleted while the programs are in execution. Mappings, or the identity of the processors involved, do not have to be known at compile-time or even link-time. Programs can be made to interact with different granularities of interaction without requiring any re-coding. A priori knowledge of data movement requirements allows for buffering of data and overlap of computations between coupled applications. Efficient data movement is achieved by pre-computing an optimized schedule. We describe our prototype implementation and evaluate its performance for a set of synthetic benchmarks that examine the variation of performance with coupling parameters. We demonstrate that the cost of the added flexibility gained by our coupling method is not prohibitive when compared with a monolithic code that does the same computation. (Also cross-referenced as UMIACS-TR-95-116

    Roles for Chd7 in Zebrafish Development with Implications for Human Disease

    Get PDF
    The Chromodomain Helicase DNA Binding Protein (CHD) family consists of a group of nine known proteins that function in controlling DNA dynamics and transcription. The CHD family member of interest in this work, Chromodomain helicase DNA-binding protein 7 (chd7), has been implicated in human CHARGE (coloboma of the eye, heart defects, atresia of the choanae, retardation of growth and/or development, genital and/or urinary abnormalities, and ear abnormalities and deafness) Syndrome and Idiopathic Scoliosis, however little is known about the roles this gene plays during development. Using zebrafish as a model system, morpholino antisense technology, whole mount in situ hybridization (WISH), and a relatively new protocol, RNA-Seq, we provide evidence of several developmental defects resulting from Chd7 knockdown as well as describe several genes that exhibit significant differential expression upon Chd7 knockdown. We provide evidence that zebrafish embryos highly express chd7 in the retina, brain and somite boundaries. We demonstrate that a reduction in Chd7 synthesis results in laterality defects in the expression of somitogenesis genes, consistent with the hypothesis that this chromatin remodeler is necessary for the proper development of the long axis of the body and may be involved in the onset of human scoliosis. We show that the presence of Chd7 is crucial for proper neural, retinal and vertebral development in zebrafish and that loss of function of Chd7 resulted in several morphological defects similar to those observed in human patients with CHARGE syndrome. Finally, this work is the first transcriptome-wide study analyzing genetic changes in response to knockdown of a member of the Chromodomain Helicase DNA Binding Protein family. Using RNA-Seq we were able to identify and quantify differentially expressed genes in chd7 morphant zebrafish embryos compared to control morphant zebrafish embryos. These data were consistent with our knockdown experiments as well as with putative roles for Chd7 in human diseases. In an effort to make a broader impact, we extended the use of zebrafish beyond scientific research and described several different methods of using zebrafish in the undergraduate laboratory classroom. First, we described the use of WISH in the classroom to help students form connections between molecular and organismal biology and then described the use of two model organisms, zebrafish and C. elegans, in the classroom to help students understand how genes and the environment interact to affect organismal development. Cumulatively, this work is an example of interdisciplinary study both in the research laboratory as well as in the classroom. It involves the intensive study of a chromatin remodeler, Chd7, and makes important connections between Chd7 knockdown in zebrafish and human diseases. It also describes the pedagogical advantages of model organisms with respect to providing a rich and integrative experience for undergraduate biology majors

    Supporting general data structures and execution models in runtime environments

    Get PDF
    Para aprovechar las plataformas paralelas, se necesitan herramientas de programación para poder representar apropiadamente los algoritmos paralelos. Además, los entornos paralelos requieren sistemas en tiempo de ejecución que ofrezcan diferentes paradigmas de computación. Existen diferentes áreas a estudiar con el fin de construir un sistema en tiempo de ejecución completo para un entorno paralelo. Esta Tesis aborda dos problemas comunes: el soporte unificado de datos densos y dispersos, y la integración de paralelismo orientado a mapeo de datos y paralelismo orientado a flujo de datos. Esta Tesis propone una solución que desacopla la representación, partición y reparto de datos, del algoritmo y de la estrategia de diseño paralelo para integrar manejo para datos densos y dispersos. Además, se presenta un nuevo modelo de programación basado en el paradigma de flujo de datos, donde diferentes actividades pueden ser arbitrariamente enlazadas para formar redes genéricas pero estructuradas que representan el cómputo globalDepartamento de Informática (Arquitectura y Tecnología de Computadores, Ciencias de la Computación e Inteligencia Artificial, Lenguajes y Sistemas Informáticos

    Architecture aware parallel programming in Glasgow parallel Haskell (GPH)

    Get PDF
    General purpose computing architectures are evolving quickly to become manycore and hierarchical: i.e. a core can communicate more quickly locally than globally. To be effective on such architectures, programming models must be aware of the communications hierarchy. This thesis investigates a programming model that aims to share the responsibility of task placement, load balance, thread creation, and synchronisation between the application developer and the runtime system. The main contribution of this thesis is the development of four new architectureaware constructs for Glasgow parallel Haskell that exploit information about task size and aim to reduce communication for small tasks, preserve data locality, or to distribute large units of work. We define a semantics for the constructs that specifies the sets of PEs that each construct identifies, and we check four properties of the semantics using QuickCheck. We report a preliminary investigation of architecture aware programming models that abstract over the new constructs. In particular, we propose architecture aware evaluation strategies and skeletons. We investigate three common paradigms, such as data parallelism, divide-and-conquer and nested parallelism, on hierarchical architectures with up to 224 cores. The results show that the architecture-aware programming model consistently delivers better speedup and scalability than existing constructs, together with a dramatic reduction in the execution time variability. We present a comparison of functional multicore technologies and it reports some of the first ever multicore results for the Feedback Directed Implicit Parallelism (FDIP) and the semi-explicit parallelism (GpH and Eden) languages. The comparison reflects the growing maturity of the field by systematically evaluating four parallel Haskell implementations on a common multicore architecture. The comparison contrasts the programming effort each language requires with the parallel performance delivered. We investigate the minimum thread granularity required to achieve satisfactory performance for three implementations parallel functional language on a multicore platform. The results show that GHC-GUM requires a larger thread granularity than Eden and GHC-SMP. The thread granularity rises as the number of cores rises
    corecore