E—A language for thread-level parallel programming on synchronous shared memory NOCs

    Research output: Contribution to journalArticleScientificpeer-review

    Abstract

    As systems on chip are evolving to networks on chip (NOC) providing a unified communication infrastructure for a number of computational resources, being able to easily implement computational tasks as a parallel program that can be efficiently executed by multiple resources together is becoming increasingly important. Recent advances in thread-level parallel (TLP) architectures have made it possible to implement efficiently an easy-to-use synchronous shared memory programming model (Parallel Random Access Machine, PRAM) on a NOC. In this paper we describe a novel programming language, called e, for fine-grained TLP programming on synchronous shared memory NOC architectures realizing the PRAM model. The language uses a familiar c-like syntax and provides support for shared and private variables, arbitrary hierarchical groups of threads, and synchronous control structures. This allows a programmer to use various advanced TLP programming techniques like data parallelism, divide-and-conquer technique, different blocking techniques, and both synchronous and asynchronous programming style. We will also shortly experiment the e-language with real parallel programs using our experimental e-compiler and scalable Eclipse NOC architecture.
    Original languageEnglish
    Pages (from-to)807 - 812
    Number of pages6
    JournalWSEAS Transactions on Computers
    Volume3
    Issue number3
    Publication statusPublished - 2004
    MoE publication typeA1 Journal article-refereed

    Fingerprint

    Parallel programming
    Data storage equipment
    Parallel architectures
    Computer programming
    Computer programming languages
    Network-on-chip
    Communication
    Experiments

    Keywords

    • Thread-level parallel programming languages
    • parallel random access machine
    • networks on chip

    Cite this

    @article{b194dc8e853b4edbbc4766401292512c,
    title = "E—A language for thread-level parallel programming on synchronous shared memory NOCs",
    abstract = "As systems on chip are evolving to networks on chip (NOC) providing a unified communication infrastructure for a number of computational resources, being able to easily implement computational tasks as a parallel program that can be efficiently executed by multiple resources together is becoming increasingly important. Recent advances in thread-level parallel (TLP) architectures have made it possible to implement efficiently an easy-to-use synchronous shared memory programming model (Parallel Random Access Machine, PRAM) on a NOC. In this paper we describe a novel programming language, called e, for fine-grained TLP programming on synchronous shared memory NOC architectures realizing the PRAM model. The language uses a familiar c-like syntax and provides support for shared and private variables, arbitrary hierarchical groups of threads, and synchronous control structures. This allows a programmer to use various advanced TLP programming techniques like data parallelism, divide-and-conquer technique, different blocking techniques, and both synchronous and asynchronous programming style. We will also shortly experiment the e-language with real parallel programs using our experimental e-compiler and scalable Eclipse NOC architecture.",
    keywords = "Thread-level parallel programming languages, parallel random access machine, networks on chip",
    author = "Martti Forsell",
    year = "2004",
    language = "English",
    volume = "3",
    pages = "807 -- 812",
    journal = "WSEAS Transactions on Computers",
    issn = "1109-2750",
    publisher = "WSEAS Press",
    number = "3",

    }

    E—A language for thread-level parallel programming on synchronous shared memory NOCs. / Forsell, Martti.

    In: WSEAS Transactions on Computers, Vol. 3, No. 3, 2004, p. 807 - 812.

    Research output: Contribution to journalArticleScientificpeer-review

    TY - JOUR

    T1 - E—A language for thread-level parallel programming on synchronous shared memory NOCs

    AU - Forsell, Martti

    PY - 2004

    Y1 - 2004

    N2 - As systems on chip are evolving to networks on chip (NOC) providing a unified communication infrastructure for a number of computational resources, being able to easily implement computational tasks as a parallel program that can be efficiently executed by multiple resources together is becoming increasingly important. Recent advances in thread-level parallel (TLP) architectures have made it possible to implement efficiently an easy-to-use synchronous shared memory programming model (Parallel Random Access Machine, PRAM) on a NOC. In this paper we describe a novel programming language, called e, for fine-grained TLP programming on synchronous shared memory NOC architectures realizing the PRAM model. The language uses a familiar c-like syntax and provides support for shared and private variables, arbitrary hierarchical groups of threads, and synchronous control structures. This allows a programmer to use various advanced TLP programming techniques like data parallelism, divide-and-conquer technique, different blocking techniques, and both synchronous and asynchronous programming style. We will also shortly experiment the e-language with real parallel programs using our experimental e-compiler and scalable Eclipse NOC architecture.

    AB - As systems on chip are evolving to networks on chip (NOC) providing a unified communication infrastructure for a number of computational resources, being able to easily implement computational tasks as a parallel program that can be efficiently executed by multiple resources together is becoming increasingly important. Recent advances in thread-level parallel (TLP) architectures have made it possible to implement efficiently an easy-to-use synchronous shared memory programming model (Parallel Random Access Machine, PRAM) on a NOC. In this paper we describe a novel programming language, called e, for fine-grained TLP programming on synchronous shared memory NOC architectures realizing the PRAM model. The language uses a familiar c-like syntax and provides support for shared and private variables, arbitrary hierarchical groups of threads, and synchronous control structures. This allows a programmer to use various advanced TLP programming techniques like data parallelism, divide-and-conquer technique, different blocking techniques, and both synchronous and asynchronous programming style. We will also shortly experiment the e-language with real parallel programs using our experimental e-compiler and scalable Eclipse NOC architecture.

    KW - Thread-level parallel programming languages

    KW - parallel random access machine

    KW - networks on chip

    M3 - Article

    VL - 3

    SP - 807

    EP - 812

    JO - WSEAS Transactions on Computers

    JF - WSEAS Transactions on Computers

    SN - 1109-2750

    IS - 3

    ER -