parirrapp-ppopp09 ��� جدا

parirrapp-ppopp09 ��� جدا - How Much...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: How Much Parallelism is There in Irregular Applications? * Milind Kulkarni, Martin Burtscher, Rajasekhar Inkulu, Keshav Pingali Institute for Computational Engineering and Sciences The University of Texas at Austin { milind, burtscher, rinkulu } @ices.utexas.edu, pingali@cs.utexas.edu Calin Cas caval IBM Research cascaval@us.ibm.com Abstract Irregular programs are programs organized around pointer-based data structures such as trees and graphs. Recent investigations by the Galois project have shown that many irregular programs have a generalized form of data-parallelism called amorphous data-parallelism . However, in many programs, amorphous data- parallelism cannot be uncovered using static techniques, and its exploitation requires runtime strategies such as optimistic parallel execution. This raises a natural question: how much amorphous data-parallelism actually exists in irregular programs? In this paper, we describe the design and implementation of a tool called ParaMeter that produces parallelism profiles for irreg- ular programs. Parallelism profiles are an abstract measure of the amount of amorphous data-parallelism at different points in the ex- ecution of an algorithm, independent of implementation-dependent details such as the number of cores, cache sizes, load-balancing, etc. ParaMeter can also generate constrained parallelism profiles for a fixed number of cores. We show parallelism profiles for seven irregular applications, and explain how these profiles provide in- sight into the behavior of these applications. Categories and Subject Descriptors D.1.3 [ Programming Tech- niques ]: Concurrent ProgrammingParallel Programming General Terms Algorithms, Languages, Performance Keywords Optimistic Parallelism, Profiling, Parallelism Profiles 1. Introduction A theory is something nobody believes, except the person who invented it. An experiment is something everybody believes, except the person who did it. Albert Einstein Over the past twenty-five years, the parallel programming commu- nity has developed a deep understanding of the opportunities for exploiting parallelism in regular programs organized around dense vectors and matrices, such as matrix factorizations and stencil com- putations. The bulk of the parallelism in these programs is data- * This work is supported in part by NSF grants 0833162, 0719966, 0702353, 0724966, 0739601, and 0615240, as well as grants from IBM and Intel Corportation. 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. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee....
View Full Document

This note was uploaded on 09/26/2009 for the course CS 525 taught by Professor Rjyosy during the Winter '09 term at Central Mich..

Page1 / 12

parirrapp-ppopp09 ��� جدا - How Much...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online