Partitioning Strategies: Spatiotemporal Patterns of Program Decomposition
نویسندگان
چکیده
We describe four partitioning strategies, or patterns, used to decompose a serial application into multiple concurrently executing parts. These partitioning strategies augment the commonly used task and data parallel patterns by recognizing that applications are spatiotemporal in nature. Therefore, data and instruction decomposition are further distinguished by whether the partitioning is done in the spatial or in temporal dimension. Thus, we arrive at four decomposition strategies: spatial data partitioning (SDP), temporal data partitioning (TDP), spatial instruction partitioning (SIP), and temporal instruction partitioning (TIP), and catalog the benefits and drawbacks of each. In addition, the practical use of this work is demonstrated by applying these strategies, and combinations thereof, to implement several different parallelizations of a multicore H.264 encoder for high-definition video.
منابع مشابه
Partitioning Strategies for Concurrent Programming
This work presents four partitioning strategies, or design patterns, useful for decomposing a serial application into multiple concurrently executing parts. These partitioning strategies augment the commonly used task and data parallel design patterns by recognizing that applications are spatiotemporal in nature. Therefore, data and instruction decomposition are further distinguished by whether...
متن کاملStructure Across Scales: Hierarchical Decomposition of Spatiotemporal Data Using A Scale-Space Approach
The ability to derive relationships between parts (granules) of a phenomenon that extends over space and time at different scales is essential in numerous application areas. Currently, the task of deriving a hierarchical decomposition of a spatiotemporal phenomenon relies on expert domain knowledge and is driven by a human operator. With the increased availability of spatiotemporal data this ap...
متن کاملOptimal Partitioning and Coordination Decisions in System Design Using an Evolutionary Algorithm
1. Abstract Use of decomposition-based design optimization methods requires a priori selection of system partitioning and of the corresponding coordination strategy. Typically, partitioning systems into smaller, easier to solve subproblems leads to more complicated, computationally expensive coordination strategies. Previous optimal partitioning techniques have not addressed the coordination is...
متن کاملTemporal Query Processing and Optimization in Multiprocessor Database Machines
In this paper, we discuss issues involving temporal data fragmentation, temporal query processing, and query optimization in multiprocessor database machines. We propose parallel processing strategies, which are based on partitioning of temporal relations on timestamp values, for multi-way joins (e.g., complex temporal pattern queries) and optimization alternatives. We analyze the proposed sche...
متن کاملScalability Analysis of Partitioning Strategies forFinite Element Graphs
Issues of partitioning Finite Element Graphs are central to parallel formulations of the Finite Element Method. Due to the nature of the problem, optimal partitioning schemes should conform to three basic criteria: equal load on all processors; locality of communication; and maximum computation to communication ratio associated with each partition. Many techniques have been presented in literat...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009