Optimistic Parallelism Requires Abstractions.
Saved in:
| Title: | Optimistic Parallelism Requires Abstractions. |
|---|---|
| Authors: | Kulkarni, Milind1 milind@csutexas.edu, Pingali, Keshav1 pingali@csutexas.edu, Walter, Bruce2 bjw@graphics.cornell.edu, Ramanarayanan, Ganesh2 graman@cs.cornell.edu, Bala, Kavita2 kb@cs.cornell.edu, Chew, L. Paul2 chew@cs.cornell.edu |
| Source: | Communications of the ACM. Sep2009, Vol. 52 Issue 9, p89-97. 9p. 9 Diagrams, 3 Graphs. |
| Subjects: | Parallel logic programming, Abstract thought, Microprocessors, Computer logic, Software architecture, Sequential processing (Computer science), Data structures |
| Abstract: | The problem of writing software for multicore processors is greatly simplified if we could automatically parallelize sequential programs. Although auto-parallelization has been studied for many decades, it has succeeded only in a few application areas such as dense matrix computations. In particular, auto-parallelization of irregular programs, which are organized around large, pointer-based data structures like graphs, has seemed intractable. The Galois project is taking a fresh look at auto-parallelization. Rather than attempt to parallelize all programs no matter how obscurely they are written, we are designing programming abstractions that permit programmers to highlight opportunities for exploiting parallelism in sequential programs, and building a runtime system that uses these hints to execute the program in parallel. In this paper, we describe the design and implementation of a system based on these ideas. Experimental results for two real-world irregular applications, a Delaunay mesh refinement application and a graphics application that performs agglomerative clustering, demonstrate that this approach is promising. [ABSTRACT FROM AUTHOR] |
| Copyright of Communications of the ACM is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.) | |
| Database: | Engineering Source |
| FullText | Links: – Type: pdflink Text: Availability: 0 |
|---|---|
| Header | DbId: egs DbLabel: Engineering Source An: 44181663 AccessLevel: 6 PubType: Periodical PubTypeId: serialPeriodical PreciseRelevancyScore: 0 |
| IllustrationInfo | |
| Items | – Name: Title Label: Title Group: Ti Data: Optimistic Parallelism Requires Abstractions. – Name: Author Label: Authors Group: Au Data: <searchLink fieldCode="AR" term="%22Kulkarni%2C+Milind%22">Kulkarni, Milind</searchLink><relatesTo>1</relatesTo><i> milind@csutexas.edu</i><br /><searchLink fieldCode="AR" term="%22Pingali%2C+Keshav%22">Pingali, Keshav</searchLink><relatesTo>1</relatesTo><i> pingali@csutexas.edu</i><br /><searchLink fieldCode="AR" term="%22Walter%2C+Bruce%22">Walter, Bruce</searchLink><relatesTo>2</relatesTo><i> bjw@graphics.cornell.edu</i><br /><searchLink fieldCode="AR" term="%22Ramanarayanan%2C+Ganesh%22">Ramanarayanan, Ganesh</searchLink><relatesTo>2</relatesTo><i> graman@cs.cornell.edu</i><br /><searchLink fieldCode="AR" term="%22Bala%2C+Kavita%22">Bala, Kavita</searchLink><relatesTo>2</relatesTo><i> kb@cs.cornell.edu</i><br /><searchLink fieldCode="AR" term="%22Chew%2C+L%2E+Paul%22">Chew, L. Paul</searchLink><relatesTo>2</relatesTo><i> chew@cs.cornell.edu</i> – Name: TitleSource Label: Source Group: Src Data: <searchLink fieldCode="JN" term="%22Communications+of+the+ACM%22">Communications of the ACM</searchLink>. Sep2009, Vol. 52 Issue 9, p89-97. 9p. 9 Diagrams, 3 Graphs. – Name: Subject Label: Subjects Group: Su Data: <searchLink fieldCode="DE" term="%22Parallel+logic+programming%22">Parallel logic programming</searchLink><br /><searchLink fieldCode="DE" term="%22Abstract+thought%22">Abstract thought</searchLink><br /><searchLink fieldCode="DE" term="%22Microprocessors%22">Microprocessors</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+logic%22">Computer logic</searchLink><br /><searchLink fieldCode="DE" term="%22Software+architecture%22">Software architecture</searchLink><br /><searchLink fieldCode="DE" term="%22Sequential+processing+%28Computer+science%29%22">Sequential processing (Computer science)</searchLink><br /><searchLink fieldCode="DE" term="%22Data+structures%22">Data structures</searchLink> – Name: Abstract Label: Abstract Group: Ab Data: The problem of writing software for multicore processors is greatly simplified if we could automatically parallelize sequential programs. Although auto-parallelization has been studied for many decades, it has succeeded only in a few application areas such as dense matrix computations. In particular, auto-parallelization of irregular programs, which are organized around large, pointer-based data structures like graphs, has seemed intractable. The Galois project is taking a fresh look at auto-parallelization. Rather than attempt to parallelize all programs no matter how obscurely they are written, we are designing programming abstractions that permit programmers to highlight opportunities for exploiting parallelism in sequential programs, and building a runtime system that uses these hints to execute the program in parallel. In this paper, we describe the design and implementation of a system based on these ideas. Experimental results for two real-world irregular applications, a Delaunay mesh refinement application and a graphics application that performs agglomerative clustering, demonstrate that this approach is promising. [ABSTRACT FROM AUTHOR] – Name: AbstractSuppliedCopyright Label: Group: Ab Data: <i>Copyright of Communications of the ACM is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.) |
| PLink | https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=44181663 |
| RecordInfo | BibRecord: BibEntity: Identifiers: – Type: doi Value: 10.1145/1562164.1562188 Languages: – Code: eng Text: English PhysicalDescription: Pagination: PageCount: 9 StartPage: 89 Subjects: – SubjectFull: Parallel logic programming Type: general – SubjectFull: Abstract thought Type: general – SubjectFull: Microprocessors Type: general – SubjectFull: Computer logic Type: general – SubjectFull: Software architecture Type: general – SubjectFull: Sequential processing (Computer science) Type: general – SubjectFull: Data structures Type: general Titles: – TitleFull: Optimistic Parallelism Requires Abstractions. Type: main BibRelationships: HasContributorRelationships: – PersonEntity: Name: NameFull: Kulkarni, Milind – PersonEntity: Name: NameFull: Pingali, Keshav – PersonEntity: Name: NameFull: Walter, Bruce – PersonEntity: Name: NameFull: Ramanarayanan, Ganesh – PersonEntity: Name: NameFull: Bala, Kavita – PersonEntity: Name: NameFull: Chew, L. Paul IsPartOfRelationships: – BibEntity: Dates: – D: 01 M: 09 Text: Sep2009 Type: published Y: 2009 Identifiers: – Type: issn-print Value: 00010782 Numbering: – Type: volume Value: 52 – Type: issue Value: 9 Titles: – TitleFull: Communications of the ACM Type: main |
| ResultId | 1 |