Sciweavers

CC
2009
Springer

Scheduling Tasks to Maximize Usage of Aggregate Variables in Place

13 years 9 months ago
Scheduling Tasks to Maximize Usage of Aggregate Variables in Place
Single-assignment languages with copy semantics have a very simple and approachable programming model. A na¨ıve implementation of the copy semantics that copies the result of every computation to a new location, can result in poor performance. Whereas, an implementation that keeps the results in the same location, when possible, can achieve much higher performance. In this paper, we present a greedy algorithm for in-place computation of aggregate (array and structure) variables. Our algorithm greedily picks the most profitable opportunities for in-place computation, then updates the scheduling and in-place constraints in the program graph. The algorithm runs in O(TlogT + EW V + V 2 ) time, where T is the number of in-placeness opportunities, EW is the number of edges and V the number of computational nodes in a program graph. We evaluate the performance of the code generated by the LabVIEWTM compiler using our algorithm against the code that performs no in-place computation at all, ...
Samah Abu-Mahmeed, Cheryl McCosh, Zoran Budimlic,
Added 24 Jul 2010
Updated 24 Jul 2010
Type Conference
Year 2009
Where CC
Authors Samah Abu-Mahmeed, Cheryl McCosh, Zoran Budimlic, Ken Kennedy, Kaushik Ravindran, Kevin Hogan, Paul Austin, Steve Rogers, Jacob Kornerup
Comments (0)