Two Migratory Algorithms for Mapping Meta-Tasks to a Mixed-Machine
HC Environment
Amal S. Khalifa Reda A. Ammar Tahany A. Fegrany Mohammed F. Tolba
Faculty of Computer &
Information Sciences,
Ain Shams University,
Abbassia, Cairo,11566,
Egypt
Safwat@engr.uconn.edu
Computer Science &
Engineering Dept.,
University. of
Connecticut, Storrs,
CT, 06269, USA
Reda@engr.uconn.edu
Computer Science
Department,
University of New Haven,
West Haven, CT, USA
TFergany@NewHaven.edu
Faculty of Computer
& Information
Sciences,
Ain Shams
University,
Abbassia,
Cairo,11566, Egypt
FTolba@gmail.com
Abstract
High-performance computing applications consist of
various subtasks that have different computational
requirements with different needs for machine capabilities.
Heterogeneous computing Systems (HC) use different types
of machines, networks, and interfaces to coordinate the
execution of various task components and hence achieve
better system performance. Mapping/scheduling is
considered one of the main research fields in the HC
community. They are known to be NP-Complete except
under a few special situations. Solving the mapping problem
is basically deciding on which task should be moved to
where and when, to optimize some objective function.
Mapping tasks in HC systems is done either statically or
dynamically. In this paper, we introduce two migratory
algorithms for dynamic mapping of a set of independent
tasks to the machines of a HC suite. The proposed
algorithms are modifications to the Max-min heuristic that
assigns tasks in a batch-mode fashion. The presented
approaches are based on the idea of task deployment to
allow dynamic reallocation of running tasks to improve the
overall performance of the HC system. The goal is to
minimize the total execution time (makespan) of the
metatask.
1. Introduction
Today distributed systems are everywhere starting from
the world wide web, through the banks interconnected
systems, to the network of computers in a modern car [1].
Distributed Systems have several preferable features such as
Dependability, Resource sharing and Power aggregation.
The main objective of constructing distributed systems is to
provide high performance computation power to serve the
increasing need of large applications. One of the biggest
challenges with high-performance computing is that a
typical application may have various subtasks with different
computational requirements which result in different needs
for machine capabilities. This makes it generally impossible
to satisfy all computational requirements using single
machine architecture with its associated compiler, operating
system, and programming tools [2]. That’s why there is a
great interest in research in the field of heterogeneous
computing Systems (HC).
There is a great variety of types of parallel and distributed
heterogeneous computing systems. A mixed-mode HC
system refers to single parallel processing systems, whose
processors are capable of executing in either the
synchronous SIMD or the asynchronous MIMD mode of
parallelism, and can switch between the modes at the
instruction level with negligible overhead. In multi-mode
HC, multiple modes of computation are provided and can be
used simultaneously. On the other hand, in mixed-machine
HC systems, a heterogeneous suite of machines is
interconnected by high-speed links to function as a
metacomputer or a grid [11].
One way to exploit an HC environment is to decompose a
task into subtasks, where each subtask is computationally
well suited to single machine architecture. Once the subtasks
are obtained, each subtask is assigned to a machine using
what is usually called Resource Management System (RMS)
[11]. The overall problem of matching and scheduling is
referred to as mapping. The mapping problem can be stated
shortly as: which task should be moved to where and when,
to optimize some objective function.
In this paper, we propose two dynamic mapping
techniques that assign tasks in a central fashion. Both of
them assign a set of independent tasks (metatask) in a
mixed-machine HC environment in a way that minimizes the
total execution time (makespan) of the meta-task. However,
each one of them introduces a different improvement to the
Max-min heuristic to achieve better system performance.
The first algorithm (MigMax-min) proposes a deployment
INFOS2008, March 27-29, 2008 Cairo-Egypt
© 2008 Faculty of Computers & Information-Cairo University
66 PAR-