ACM Home Page
Please provide us with feedback. Feedback
Implicitly-threaded parallelism in Manticore
Full text PdfPdf (257 KB)
Source
International Conference on Functional Programming archive
Proceeding of the 13th ACM SIGPLAN international conference on Functional programming table of contents
Victoria, BC, Canada
SESSION: Session 5 table of contents
Pages 119-130  
Year of Publication: 2008
ISBN:978-1-59593-919-7
Also published in ...
Authors
Matthew Fluet  Toyota Technological Institute at Chicago, Chicago, IL, USA
Mike Rainey  University of Chicago, Chicago, IL, USA
John Reppy  University of Chicago, Chicago, IL, USA
Adam Shaw  University of Chicago, Chicago, IL, USA
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 12,   Downloads (12 Months): 114,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1411204.1411224
What is a DOI?

ABSTRACT

The increasing availability of commodity multicore processors is making parallel computing available to the masses. Traditional parallel languages are largely intended for large-scale scientific computing and tend not to be well-suited to programming the applications one typically finds on a desktop system. Thus we need new parallel-language designs that address a broader spectrum of applications. In this paper, we present Manticore, a language for building parallel applications on commodity multicore hardware including a diverse collection of parallel constructs for different granularities of work. We focus on the implicitly-threaded parallel constructs in our high-level functional language. We concentrate on those elements that distinguish our design from related ones, namely, a novel parallel binding form, a nondeterministic parallel case form, and exceptions in the presence of data parallelism. These features differentiate the present work from related work on functional data parallel language designs, which has focused largely on parallel problems with regular structure and the compiler transformations --- most notably, flattening --- that make such designs feasible. We describe our implementation strategies and present some detailed examples utilizing various mechanisms of our language.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
 
4
Barton, R., D. Adkins, H. Prokop, M. Frigo, C. Joerg, M. Renard, D. Dailey, and C. Leiserson. Cilk Pousse, 1998. Viewed on March 20, 2008 at 2:45 PM.
 
5
6
7
8
9
10
 
11
12
 
13
 
14
Dailey, D. and C. E. Leiserson. Using Cilk to write multiprocessor chess programs. The Journal of the International Computer Chess Association, 2002.
15
16
17
 
18
 
19
GHC. The Glasgow Haskell Compiler. Available from http://www.haskell.org/ghc.
 
20
21
 
22
Hammond, K. Parallel SML: a Functional Language and its Implementation in Dactl. The MIT Press, Cambridge, MA, 1991.
 
23
Hedqvist, P. A parallel and multithreaded ERLANG implementation. Master's dissertation, Computer Science Department, Uppsala University, Uppsala, Sweden, June 1998.
24
25
 
26
Jones, M. P. and P. Hudak. Implicit and explicit parallel programming in Haskell. Technical Report Research Report YALEU/DCS/RR-982, Yale University, August 1993.
 
27
Leshchinskiy, R., M. M. T. Chakravarty, and G. Keller. Higher order flattening. In V. Alexandrov, D. van Albada, P. Sloot, and J. Dongarra (eds.), ICCS '06, number 3992 in LNCS, New York, NY, May 2006. Springer-Verlag, pp. 920--928.
28
 
29
Luckham, D. Programming with Specifications. Texts and Monographs in Computer Science. Springer-Verlag, 1990.
 
30
 
31
Nikhil, R. S. ID Language Reference Manual. Laboratory for Computer Science, MIT, Cambridge, MA, July 1991.
32
 
33
34
35
 
36
Rainey, M. The Manticore runtime model. Master's dissertation, University of Chicago, January 2007. Available from http://manticore.cs.uchicago.edu.
37
 
38
 
39
Reppy, J. and Y. Xiao. Toward a parallel implementation of Concurrent ML. In DAMP '08, New York, NY, January 2008. ACM.
 
40
Shaw, A. Data parallelism in Manticore. Master's dissertation, University of Chicago, July 2007. Available from http://manticore.cs.uchicago.edu.
 
41
 
42
Tarditi, D., S. Puri, and J. Oglesby. Accelerator: using data parallelism to program gpus for general-purpose uses. SIGOPS Oper. Syst. Rev., 40(5), 2006, pp. 325--335.
 
43


Collaborative Colleagues:
Matthew Fluet: colleagues
Mike Rainey: colleagues
John Reppy: colleagues
Adam Shaw: colleagues