Resource allocation for heterogeneous computing systems: performance criteria, robustness measures, optimization heuristics, and properties
Date
2010
Authors
Briceno Guerrero, Luis Diego, author
Siegel, Howard Jay, advisor
Maciejewski, Anthony A., advisor
Böhm, Anton Pedro Willem, 1948-, committee member
Jayasumana, Anura P., committee member
Smith, James T., committee member
Journal Title
Journal ISSN
Volume Title
Abstract
Heterogeneous computing (HC) is the coordinated use of different types of machines, networks, and interfaces to maximize the combined performance and/or cost effectiveness of the system. The application environments studied in this research are: a weather data processing system, a massive multi-player on-line gaming system, and a distributed satellite image processing system. Each one of these application environments was simulated on different computation platforms. Contributions for each environment: (1) mathematical model of environment, (2) defined a performance criterion, (3) defined robustness metric, (4) designed resource allocation heuristics based on performance and robustness measures, and (5) conducted simulation studies for evaluating and comparing heuristic techniques. We consider an iterative approach that decreases the finishing time of machines by repeatedly executing a resource allocation heuristic to minimize the make span of the considered machines and tasks. For each successive iteration, the make span machine of the previous iteration and the tasks assigned to it are removed from the set of considered machines and tasks. The contribution include identifying which characteristics heuristics need to generate improvement with the iterative approach, showing that the effectiveness of the iterative approach is heuristic dependent, and deriving a theorem to identify which heuristics cannot attain improvements.
Description
Department Head: Anthony A. Maciejewski.
Rights Access
Subject
Computing algorithms
heterogeneous computing
robustness
resource allocation
heuristics
Heterogeneous computing
Parallel processing (Electronic computers)
Heuristic programming