Allocating programs containing branches and loops within a multiple processor system
IEEE Transactions on Software Engineering
Heuristic Algorithms for Task Assignment in Distributed Systems
IEEE Transactions on Computers
Allocating Modules to Processors in a Distributed System
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
Correction to 'Allocating Programs Containing Branches and Loops Within a Multiple Processor System'
IEEE Transactions on Software Engineering
On the Assignment Problem of Arbitrary Process Systems to Heterogeneous Distributed Computer Systems
IEEE Transactions on Computers
Models of machines and computation for mapping in multicomputers
ACM Computing Surveys (CSUR)
A multilevel algorithm for partitioning graphs
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
On the task assignment problem: two new efficient heuristic algorithms
Journal of Parallel and Distributed Computing
The grid
Optimal task allocation in distributed systems by graph matching and state space search
Journal of Systems and Software
LEDA: a platform for combinatorial and geometric computing
LEDA: a platform for combinatorial and geometric computing
Dynamic mapping of a class of independent tasks onto heterogeneous computing systems
Journal of Parallel and Distributed Computing - Special issue on software support for distributed computing
A hybrid heuristic to solve a task allocation problem
Computers and Operations Research
Static scheduling algorithms for allocating directed task graphs to multiprocessors
ACM Computing Surveys (CSUR)
A greedy genetic algorithm for the quadratic assignment problem
Computers and Operations Research
Techniques for mapping tasks to machines in heterogeneous computing systems
Journal of Systems Architecture: the EUROMICRO Journal - Heterogeneous distributed and parallel architectures: hardware, software and design tools
A new heuristic for the process-processor mapping problem
Distributed and parallel systems
Journal of Parallel and Distributed Computing
Scheduling and Load Balancing in Parallel and Distributed Systems
Scheduling and Load Balancing in Parallel and Distributed Systems
Allocating Tree Structured Programs in a Distributed System with Uniform Communication Costs
IEEE Transactions on Parallel and Distributed Systems
Journal of Parallel and Distributed Computing - Problems in parallel and distributed computing: Solutions based on evolutionary paradigms
Clustering and reassignment-based mapping strategy for message-passing architectures
Journal of Systems Architecture: the EUROMICRO Journal
Task Execution Time Modeling for Heterogeneous Computing Systems
HCW '00 Proceedings of the 9th Heterogeneous Computing Workshop
A Heuristic Algorithm for Mapping Communicating Tasks on Heterogeneous Resources
HCW '00 Proceedings of the 9th Heterogeneous Computing Workshop
Run-time Support for Scheduling Parallel Applications in Heterogeneous NOWs
HPDC '97 Proceedings of the 6th IEEE International Symposium on High Performance Distributed Computing
On the development of a communication-aware task mapping technique
Journal of Systems Architecture: the EUROMICRO Journal
Branch-and-bound task allocation with task clustering-based pruning
Journal of Parallel and Distributed Computing
Multiprocessor Scheduling with the Aid of Network Flow Algorithms
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
An improved partial solution to the task assignment and multiway cut problems
Operations Research Letters
The bipanconnectivity and m-panconnectivity of the folded hypercube
Theoretical Computer Science
The m-pancycle-connectivity of a WK-Recursive network
Information Sciences: an International Journal
Journal of Systems Architecture: the EUROMICRO Journal
The bipancycle-connectivity of the hypercube
Information Sciences: an International Journal
The panconnectivity and the pancycle-connectivity of the generalized base-b hypercube
The Journal of Supercomputing
A novel global harmony search algorithm for task assignment problem
Journal of Systems and Software
Improving MapReduce performance in heterogeneous environments
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
Reining in the outliers in map-reduce clusters using Mantri
OSDI'10 Proceedings of the 9th USENIX conference on Operating systems design and implementation
Microprocessors & Microsystems
Brief paper: An improved differential evolution algorithm for the task assignment problem
Engineering Applications of Artificial Intelligence
Geodesic pancyclicity and balanced pancyclicity of the generalized base-b hypercube
Discrete Applied Mathematics
Dynamic dependent tasks assignment for grid computing
ICA3PP'10 Proceedings of the 10th international conference on Algorithms and Architectures for Parallel Processing - Volume Part II
Task allocation in distributed computing systems using adaptive particle swarm optimisation
International Journal of Computer Applications in Technology
Efficient task assignment on heterogeneous multicore systems considering communication overhead
ICA3PP'12 Proceedings of the 12th international conference on Algorithms and Architectures for Parallel Processing - Volume Part I
Dynamic Dependent Tasks Assignment for Grid Computing
International Journal of Grid and High Performance Computing
Journal of Parallel and Distributed Computing
Deriving Feasible Deployment Alternatives for Parallel and Distributed Simulation Systems
ACM Transactions on Modeling and Computer Simulation (TOMACS)
Maximum-throughput mapping of SDFGs on multi-core SoC platforms
Journal of Parallel and Distributed Computing
On minimizing the resource consumption of cloud applications using process migrations
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
The problem of task assignment in heterogeneous computing systems has been studied for many years with many variations. We consider the version in which communicating tasks are to be assigned to heterogeneous processors with identical communication links to minimize the sum of the total execution and communication costs. Our contributions are three fold: a task clustering method which takes the execution times of the tasks into account; two metrics to determine the order in which tasks are assigned to the processors; a refinement heuristic which improves a given assignment. We use these three methods to obtain a family of task assignment algorithms including multilevel ones that apply clustering and refinement heuristics repeatedly. We have implemented eight existing algorithms to test the proposed methods. Our refinement algorithm improves the solutions of the existing algorithms by up to 15% and the proposed algorithms obtain better solutions than these refined solutions.