35
views
0
recommends
+1 Recommend
0 collections
    0
    shares
      • Record: found
      • Abstract: found
      • Article: found
      Is Open Access

      Arrows for Parallel Computation

      Preprint
      , ,

      Read this article at

      Bookmark
          There is no author summary for this article yet. Authors can add summaries to their articles on ScienceOpen to make them more accessible to a non-specialist audience.

          Abstract

          Arrows are a general interface for computation and an alternative to Monads for API design. In contrast to Monad-based parallelism, we explore the use of Arrows for specifying generalised parallelism. Specifically, we define an Arrow-based language and implement it using multiple parallel Haskells. As each parallel computation is an Arrow, such parallel Arrows (PArrows) can be readily composed and transformed as such. To allow for more sophisticated communication schemes between computation nodes in distributed systems, we utilise the concept of Futures to wrap direct communication. To show that PArrows have similar expressive power as existing parallel languages, we implement several algorithmic skeletons and four benchmarks. Benchmarks show that our framework does not induce any notable performance overhead. We conclude that Arrows have considerable potential for composing parallel programs and for producing programs that can execute on multiple parallel language implementations.

          Related collections

          Most cited references50

          • Record: found
          • Abstract: not found
          • Article: not found

          MapReduce

            Bookmark
            • Record: found
            • Abstract: not found
            • Article: not found

            MapReduce

              Bookmark
              • Record: found
              • Abstract: not found
              • Article: not found

              Scheduling multithreaded computations by work stealing

                Bookmark

                Author and article information

                Journal
                07 January 2018
                Article
                1801.02216
                0da8647d-de58-41ab-844b-b8a83b6f8e3a

                http://creativecommons.org/licenses/by/4.0/

                History
                Custom metadata
                43 pages, 31 main figures, 3 tables, to be submitted to JFP
                cs.PL

                Comments

                Comment on this article