ACM Home Page
Please provide us with feedback. Feedback
Reasoning about inherent parallelism in modern object-oriented languages
Full text PdfPdf (220 KB)
Source ACSC; Vol. 312 archive
Proceedings of the thirty-first Australasian conference on Computer science - Volume 74 table of contents
Wollongong, Australia
SESSION: Contributed papers: operating systems and programming languages table of contents
Pages 27-36  
Year of Publication: 2008
ISBN ~ ISSN:1445-1336 , 978-1-920682-55-2
Authors
Wayne Reid  Queensland University of Technology, Brisbane QLD, Australia
Wayne Kelly  Queensland University of Technology, Brisbane QLD, Australia
Andrew Craik  Queensland University of Technology, Brisbane QLD, Australia
Sponsors
: CORE - Computing Research and Education
: Macquarie University-Sydney
: University of Wollongong, Australia
Australian Comp Soc : Australian Computer Society
: University of Auckland, New Zealand
Publisher
Australian Computer Society, Inc.  Darlinghurst, Australia, Australia
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 22,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  

ABSTRACT

In the future, if we are to continue to expect improved application performance we will have to achieve it by exploiting course-grained hardware parallelism rather then simply relying on processor cycles getting faster. Programmers will, therefore, need to accept some of the burden of detecting and exploiting application level parallelism because automatic parallelization is still far from a reality. On the one hand we need to fundamentally reconsider how we express algorithms as the languages we currently use were never designed to make reasoning about parallelism easy. On the other hand, to be widely adopted, any new programming approach will need to be only incrementally different to current paradigms. This paper attempts to find that difficult balance. It extends modern object-oriented programming techniques with a new abstraction that allows either programmers or automatic parallelizing compilers to reason about inherent data parallelism.


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
Almeida, P. S. (1997) Balloon Types: Controlling Sharing of State in Data Types. ECOOP '97 - Object-Oriented Programming. Heidelberg, Berlin, Springer Berlin / Heidelberg.
3
 
4
5
6
 
7
Cohen, A., Wu, P. & Padua, D. (2001) Pointer Analysis for Monotonic Container Traversals (CSRD TR-1586). Univeristy of Illinois at Urbana-Champaign.
 
8
Dongol, B. & Mooij, A. J. (2006) Progress in Deriving Concurrent Programs: Emphasizing the Role of Stable Guards. 8th International Conference on the Mathematics of Program Construction Kuressaare, Estonia, Springer Berlin / Heidelberg.
9
 
10
Lhoták, O. & Hendren, L. (2006) Context-Sensitive Points-to Analysis: Is It Worth It? 15th International Conference on Compiler Construction. Vienna, Austria, Springer.
11
12
 
13
 
14
Noble, J., Vitek, J. & Potter, J. (1998) Flexible Alias Protection. IN JUL, E. (Ed.) Lecture Notes in Computer Science. Berlin, Hidleburg, New York, Springer Berlin / Hamburg.
 
15
16
 
17
Rus, T. & Van Wyk, E. (1997) Model Checking as a Tool Used by Parallelizing Compilers. 2nd International Workshop on Formal Methods for Parallel Programming: Theory and Applications. Geneva, Switzerland.

Collaborative Colleagues:
Wayne Reid: colleagues
Wayne Kelly: colleagues
Andrew Craik: colleagues