dc.contributor.author |
Andronikos, T |
en |
dc.contributor.author |
Ciorba, FM |
en |
dc.contributor.author |
Theodoropoulos, P |
en |
dc.contributor.author |
Kamenopoulos, D |
en |
dc.contributor.author |
Papakonstantinou, G |
en |
dc.date.accessioned |
2014-03-01T01:28:05Z |
|
dc.date.available |
2014-03-01T01:28:05Z |
|
dc.date.issued |
2008 |
en |
dc.identifier.issn |
0164-1212 |
en |
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/18706 |
|
dc.subject |
Code generation |
en |
dc.subject |
Dynamic scheduling |
en |
dc.subject |
General loops |
en |
dc.subject |
Shared and distributed memory architectures |
en |
dc.subject.classification |
Computer Science, Software Engineering |
en |
dc.subject.classification |
Computer Science, Theory & Methods |
en |
dc.subject.other |
Chlorine compounds |
en |
dc.subject.other |
Codes (standards) |
en |
dc.subject.other |
Codes (symbols) |
en |
dc.subject.other |
Computational geometry |
en |
dc.subject.other |
Motion estimation |
en |
dc.subject.other |
Scheduling |
en |
dc.subject.other |
Testing |
en |
dc.subject.other |
Case studies |
en |
dc.subject.other |
Code generation |
en |
dc.subject.other |
Communication minimization |
en |
dc.subject.other |
Data locality |
en |
dc.subject.other |
Dithering algorithms |
en |
dc.subject.other |
Dynamic scheduling |
en |
dc.subject.other |
Extensive testing |
en |
dc.subject.other |
General loops |
en |
dc.subject.other |
Generic systems |
en |
dc.subject.other |
Loop-carried dependencies |
en |
dc.subject.other |
Makespan |
en |
dc.subject.other |
Motion estimation algorithms |
en |
dc.subject.other |
Nested Loops |
en |
dc.subject.other |
Optimal scheduling |
en |
dc.subject.other |
Parallel coding |
en |
dc.subject.other |
Parallelizing |
en |
dc.subject.other |
Run-time libraries |
en |
dc.subject.other |
Run-time scheduling |
en |
dc.subject.other |
Scheduling policies |
en |
dc.subject.other |
Shared and distributed memory architectures |
en |
dc.subject.other |
Shared-memory systems |
en |
dc.subject.other |
Test cases |
en |
dc.subject.other |
Transitive closures |
en |
dc.subject.other |
Scheduling algorithms |
en |
dc.title |
Cronus: A platform for parallel code generation based on computational geometry methods |
en |
heal.type |
journalArticle |
en |
heal.identifier.primary |
10.1016/j.jss.2007.11.715 |
en |
heal.identifier.secondary |
http://dx.doi.org/10.1016/j.jss.2007.11.715 |
en |
heal.language |
English |
en |
heal.publicationDate |
2008 |
en |
heal.abstract |
This paper describes CRONUS, a platform for parallelizing general nested loops. General nested loops contain complex loop bodies (assignments, conditionals, repetitions) and exhibit uniform loop-carried dependencies. The novelty Of CRONUS is twofold: ( 1) it determines the optimal scheduling hyperplane using the QuickHull algorithm, which is more efficient than previously used methods, and (2) it implements a simple and efficient dynamic rule (successive dynamic scheduling) for the runtime scheduling of the loop iterations along the optimal hyperplane. This scheduling policy enhances data locality and improves the makespan. CRONUS provides an efficient runtime library, specifically designed for communication minimization, that performs better than more generic systems, such as Berkeley UPC. Its performance was evaluated through extensive testing. Three representative case studies are examined: the Floyd-Steinberg dithering algorithm, the Transitive Closure algorithm, and the FSBM motion estimation algorithm. The experimental results corroborate the efficiency of the parallel code. The tests show speedup ranging from 1.18 (Out of the ideal 4) to 12.29 (Out of the ideal 16) on distributed-systems and 3.60 (out of 4) to 15.79 (out of 16) on shared-memory systems. CRONUS Outperforms UPC by 5-95% depending on the test case. (C) 2007 Elsevier Inc. All rights reserved. |
en |
heal.publisher |
ELSEVIER SCIENCE INC |
en |
heal.journalName |
Journal of Systems and Software |
en |
dc.identifier.doi |
10.1016/j.jss.2007.11.715 |
en |
dc.identifier.isi |
ISI:000258800900009 |
en |
dc.identifier.volume |
81 |
en |
dc.identifier.issue |
8 |
en |
dc.identifier.spage |
1389 |
en |
dc.identifier.epage |
1405 |
en |