[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

GUM: a portable parallel implementation of Haskell

Published: 01 May 1996 Publication History

Abstract

GUM is a portable, parallel implementation of the Haskell functional language. Despite sustained research interest in parallel functional programming, GUM is one of the first such systems to be made publicly available.GUM is message-based, and portability is facilitated by using the PVM communications harness that is available on many multi-processors. As a result, GUM is available for both shared-memory (Sun SPARCserver multiprocessors) and distributed-memory (networks of workstations) architectures. The high message-latency of distributed machines is ameliorated by sending messages asynchronously, and by sending large packets of related data in each message.Initial performance figures demonstrate absolute speedups relative to the best sequential compiler technology. To improve the performance of a parallel Haskell program GUM provides tools for monitoring and visualising the behaviour of threads and of processors during execution.

References

[1]
Arvind and Iannucci RA, "Two Fundamental Issues in Multiprocessing", Proc DFVLR Conference on Parallel Processing in Science and Engineering, Bonn-Bad Godesberg (June 1987).
[2]
Bevan DI, "Distributed Garbage Collection using Reference Counting", Proc PARLE, deBakker JW, Nijman L and Treleaven PC (eds), Eindhoven, Netherlands (June 1987).
[3]
Augustsson L, and Johnsson T, "Parallel Graph Reduction with the <v, G>-Machine", Proc. FPCA '89, London, UK, (1989), pp. 202-213.
[4]
Burton FW, and Rayward-Smith V J, "Worst Case Scheduling for Parallel Functional Programming", Journal of Functional Programming, 4(!), (January 1994), pp. 65-75.
[5]
Goldberg B, and Hudak P, "Alfalfa: Distributed Graph Reduction on a Hypercube Multiprocessor', Proc. Workshop on Graph Reduct,on, Fasel RMKJF (ed.), Santa F~, NM, Springer Verlag LNCS 279, (1986), pp. 94-113.
[6]
Goldberg BF, "Buckwheat: Graph Reduction on a Shared Memory Multiprocessor", Proc. A UM Conf. on Lisp and Functional Programming, Snowbird, Utah, (1988), ppp. 40-51.
[7]
Goldman R, and Gabriel RP, "Qlisp: Parallel Processing in Lisp", IEEE Software, pp. 51-59, (1989).
[8]
Hammond K, "Parallel Functional Programming: an Introduction, Proc. PASCO 'gd, Linz, Austria, World Scientific, (September 1994), pp. 181-193.
[9]
Hammond K, Mattson JS, Partridge AS, Peyton Jones SL, and Trinder PW "GUM: a portable Parallel Implementation of Haskell", Proc 7th. Intl. Workshop on Implementation of Functional Languages, Bastad, Sweden (September 1995).
[10]
Kesseler M, "Reducing Graph Copying Costs- Time to Wrap it up", Proc. PASCO 'gd -- First Intl. Symposium on Parallel Symbolic Computation, Hagenberg/Linz, Austria, World Scientific, (September 1994), pp. 244-253.
[11]
Kingdon H, Lester D, and Burn GL, "The HDG- Machine: a Highly Distributed Graph Reducer for a Transputer Network", The Computer Journal, 34(4), (April 1991), pp. 290-302.
[12]
Kranz DA, Halstead RH, and Mohr E, "Mul~T: a High- Performance Parallel Lisp", Proc. PLD{ '89, Portland, Oregon, (1989), pp. 81-90.
[13]
Langendoen K, "Graph Reduction on Shared Memory Multiprocessors", PhD Thesis, University of Amsterdam, 1993.
[14]
Lester D "An Efficient Distributed Garbage Collection Algorithm", Proc. PARLE '89, LNCS 365, Springer Verlag, (June 1989).
[15]
McBurney DL, and Sleep MR, "Transputer Based Experiments with the ZAPP Architecture", Proc. PARLE '87, LNCS 258/259, Springer Verlag, (1987), pp. 242- 259.
[16]
McGraw J, Skedzielewski S, Allan S, Odehoeft R, Glauert JRW, Kirkham C, Noyce W, and Thomas R, "SISAL: Streams and Iteration in a Single-Assignment Language: Reference Manual Version 1.2", Manual M- 146, Rev. 1, Lawrence Livermore National Laboratory, (March 1985).
[17]
Maranget L, "GAML: a Parallel Implementation of Lazy ML' Proc. FPCA '91, Springer Verlag LNCS 523, p.102-123, (1991).
[18]
Mattson JS, An Effective Speculative Evaluation Technique for Parallel Supercomb,nator Graph Reduction, PhD thesis, Dept. of Computer Science and Engineering, University of California, San Diego, (1993).
[19]
Mohr E, Kranz DA, and Halstead RH, "Lazy Task Creation - a Technique for Increasing the Granularity of Parallel Programs", IEEE Transactions on Parallel and Distributed Systems, 2(3), (July 1991), pp. 264-280.
[20]
NScker EGJMH, Smetsers JEW, van Eekelen MCJD and Plasmeijer MJ, "Concurrent Clean", Proc. PARLE '91, Springer VerIag LNCS 505/506, pp. 202-220, (1991).
[21]
Oak Ridge National Laboratory, University of Tennessee, "Parallel Virtual Machine Reference Manual, Version 3.2", (August 1993).
[22]
Peyton Jones SL, Clack C, Salkild J, "Highperformance parallel graph reduction", Proc PARLE ~89, Springer Verlag LNCS 365 (June 1989).
[23]
Peyton Jones SL, Gordon AD, and Finne SO, "Concurrent Haskell", Proc. A CM Symposium on Principles of Programming Languages, St Petersburg Beach, Florida, ( January 1996).
[24]
Watson P and Watson I, "An Efficient Garbage Collection Scheme for Parallel Computer Architectures", Proc PARLE, deBakker JW, Nijman L and Treleaven PC (eds), Eindhoven, Netherlands (June 1987).

Cited By

View all
  • (2022)Reliability and Security of Extreme ParallelismIEEE Consumer Electronics Magazine10.1109/MCE.2021.312098311:4(57-64)Online publication date: 1-Jul-2022
  • (2019)Colocation of Potential Parallelism in a Distributed Adaptive Run-Time System for Parallel HaskellZivilgesellschaft und Wohlfahrtsstaat im Wandel10.1007/978-3-030-18506-0_1(1-19)Online publication date: 24-Apr-2019
  • (2014)The HdpH DSLs for scalable reliable computationACM SIGPLAN Notices10.1145/2775050.263336349:12(65-76)Online publication date: 3-Sep-2014
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 31, Issue 5
May 1996
300 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/249069
Issue’s Table of Contents
  • cover image ACM Conferences
    PLDI '96: Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
    May 1996
    300 pages
    ISBN:0897917952
    DOI:10.1145/231379
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 1996
Published in SIGPLAN Volume 31, Issue 5

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)153
  • Downloads (Last 6 weeks)34
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)Reliability and Security of Extreme ParallelismIEEE Consumer Electronics Magazine10.1109/MCE.2021.312098311:4(57-64)Online publication date: 1-Jul-2022
  • (2019)Colocation of Potential Parallelism in a Distributed Adaptive Run-Time System for Parallel HaskellZivilgesellschaft und Wohlfahrtsstaat im Wandel10.1007/978-3-030-18506-0_1(1-19)Online publication date: 24-Apr-2019
  • (2014)The HdpH DSLs for scalable reliable computationACM SIGPLAN Notices10.1145/2775050.263336349:12(65-76)Online publication date: 3-Sep-2014
  • (2014)pHood: Tool Description, Analysis Techniques, and Case StudiesNew Generation Computing10.1007/s00354-014-0103-432:1(59-91)Online publication date: 18-Feb-2014
  • (2014)Parallel Haskell implementations of the N-body problemConcurrency and Computation: Practice & Experience10.1002/cpe.308726:4(987-1019)Online publication date: 25-Mar-2014
  • (2013)Eden's Bees: Parallelizing Artificial Bee Colony in a Functional EnvironmentProcedia Computer Science10.1016/j.procs.2013.05.23018(661-670)Online publication date: 2013
  • (2012)Repeating HistoryProceedings of the 2012 Conference on Trends in Functional Programming - Volume 782910.1007/978-3-642-40447-4_15(231-246)Online publication date: 12-Jun-2012
  • (2012)Using load information in work-stealing on distributed systems with non-uniform communication latenciesProceedings of the 18th international conference on Parallel Processing10.1007/978-3-642-32820-6_17(155-166)Online publication date: 27-Aug-2012
  • (2011)Implementing a high-level distributed-memory parallel haskell in haskellProceedings of the 23rd international conference on Implementation and Application of Functional Languages10.1007/978-3-642-34407-7_3(35-50)Online publication date: 3-Oct-2011
  • (2008)A Debugger for Parallel Haskell DialectsProceedings of the 8th international conference on Algorithms and Architectures for Parallel Processing10.1007/978-3-540-69501-1_30(282-293)Online publication date: 9-Jun-2008
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media