5 research outputs found

    Macroservers: An Execution Model for DRAM Processor-In-Memory Arrays

    Get PDF
    The emergence of semiconductor fabrication technology allowing a tight coupling between high-density DRAM and CMOS logic on the same chip has led to the important new class of Processor-In-Memory (PIM) architectures. Newer developments provide powerful parallel processing capabilities on the chip, exploiting the facility to load wide words in single memory accesses and supporting complex address manipulations in the memory. Furthermore, large arrays of PIMs can be arranged into a massively parallel architecture. In this report, we describe an object-based programming model based on the notion of a macroserver. Macroservers encapsulate a set of variables and methods; threads, spawned by the activation of methods, operate asynchronously on the variables' state space. Data distributions provide a mechanism for mapping large data structures across the memory region of a macroserver, while work distributions allow explicit control of bindings between threads and data. Both data and work distributuions are first-class objects of the model, supporting the dynamic management of data and threads in memory. This offers the flexibility required for fully exploiting the processing power and memory bandwidth of a PIM array, in particular for irregular and adaptive applications. Thread synchronization is based on atomic methods, condition variables, and futures. A special type of lightweight macroserver allows the formulation of flexible scheduling strategies for the access to resources, using a monitor-like mechanism

    Compiling High Performance Fortran to Message Passing

    No full text
    ADAPTOR is a public domain High Performance Fortran compilation system that provides the comfortable data parallel programming paradigm on parallel machines with distributed memory. Therefore, the data parallel programs with their global view of data are translated to programs that work on the local parts of the distributed data and exchange the other needed data via message passing. This paper describes the design and the implementation of the ADAPTOR system and discusses its portability by using a portable messagepassing interface. The advantages of using the new message passing interface MPI are outlined. Furthermore, the combination of data parallel programs with efficient message passage programs is discussed that will allow the use of existing libraries. 1 Introduction High Performance Fortran (HPF) is the new de facto standard language for writing data parallel programs for shared and distributed memory parallel architectures [9]. HPF provides a much more friendly programming p..

    Compiling High Performance Fortran In The Prepare Environment

    No full text
    The ESPRIT project Prepare aims to develop a High Performance Fortran (HPF) compiler within an integrated programming environment. This paper presents several ideas from the compiler specification that we have elaborated as the basis for the forthcoming compiler implementation. HPF data distribution and alignment specifications are translated by the compiler into mathematical functions that determine the ownership and offsets of local data. Using the "owner computes" rule strategy, the compiler derives the work distribution and determines nonlocal data element sets that have to be communicated between corresponding processors. 1 Introduction The aim of the European project PREPARE ([10]) is to develop a new, powerful toolset for the parallelization of applications for Distributed-Memory MIMD architectures. The project develops a programming environment in which High Performance Fortran (HPF) [4] programs can be developed or restructured in a machine independent way. The PREPARE HPF co..

    Compiling High Performance Fortran for distributed-memory systems

    No full text
    a language for writing parallel programs. The compiler generates code for distributed-memory machines consisting of interconnected workstations or servers powered by Digital’s Alpha microprocessors. The DEC Fortran 90 compiler efficiently implements the features of Fortran 90 and HPF that support parallelism. HPF programs compiled with Digital’s compiler yield performance that scales linearly or even superlinearly on significant applications on both distributedmemory and shared-memory architectures
    corecore