dc.contributor.author |
Ciorba, FM |
en |
dc.contributor.author |
Riakiotakis, I |
en |
dc.contributor.author |
Andronikos, T |
en |
dc.contributor.author |
Papakonstantinou, G |
en |
dc.contributor.author |
Chronopoulos, AT |
en |
dc.date.accessioned |
2014-03-01T01:28:16Z |
|
dc.date.available |
2014-03-01T01:28:16Z |
|
dc.date.issued |
2008 |
en |
dc.identifier.issn |
0743-7315 |
en |
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/18790 |
|
dc.subject |
Dynamic load balancing algorithms |
en |
dc.subject |
Loops with dependencies |
en |
dc.subject |
Non-dedicated heterogeneous systems |
en |
dc.subject |
Synchronization |
en |
dc.subject |
Weighting |
en |
dc.subject.classification |
Computer Science, Theory & Methods |
en |
dc.subject.other |
Program processors |
en |
dc.subject.other |
Resource allocation |
en |
dc.subject.other |
Scheduling |
en |
dc.subject.other |
Synchronization |
en |
dc.subject.other |
Dynamic load balancing algorithms |
en |
dc.subject.other |
Inter processor communication |
en |
dc.subject.other |
Non dedicated heterogeneous systems |
en |
dc.subject.other |
Scheduling algorithms |
en |
dc.title |
Enhancing self-scheduling algorithms via synchronization and weighting |
en |
heal.type |
journalArticle |
en |
heal.identifier.primary |
10.1016/j.jpdc.2007.07.003 |
en |
heal.identifier.secondary |
http://dx.doi.org/10.1016/j.jpdc.2007.07.003 |
en |
heal.language |
English |
en |
heal.publicationDate |
2008 |
en |
heal.abstract |
Existing dynamic self-scheduling algorithms, used to schedule independent tasks on heterogeneous clusters, cannot handle tasks with dependencies because they lack the support for internode communication. To compensate for this deficiency we introduce a synchronization mechanism that provides inter-processor communication, thus, enabling self-scheduling algorithms to handle efficiently nested loops with dependencies. We also present a weighting mechanism that significantly improves the performance of dynamic self-scheduling algorithms. These algorithms divide the total number of tasks into chunks and assign them to processors. The weighting mechanism adapts the chunk sizes to the computing power and current run-queue state of the processors. The synchronization and weighting mechanisms are orthogonal, in the sense that they can simultaneously be applied to loops with dependencies. Thus, they broaden the application spectrum of dynamic self-scheduling algorithms and improve their performance. Extensive testing confirms the efficiency of the synchronization and weighting mechanisms and the significant improvement of the synchronized-weighted versions of the algorithms over the synchronized-only versions. (c) 2007 Elsevier Inc. All rights reserved. |
en |
heal.publisher |
ACADEMIC PRESS INC ELSEVIER SCIENCE |
en |
heal.journalName |
Journal of Parallel and Distributed Computing |
en |
dc.identifier.doi |
10.1016/j.jpdc.2007.07.003 |
en |
dc.identifier.isi |
ISI:000253282300010 |
en |
dc.identifier.volume |
68 |
en |
dc.identifier.issue |
2 |
en |
dc.identifier.spage |
246 |
en |
dc.identifier.epage |
264 |
en |