SPAA '89 Proceedings of the first annual ACM symposium on Parallel algorithms and architectures
Efficient parallel algorithms can be made robust
Proceedings of the eighth annual ACM Symposium on Principles of distributed computing
Asynchronous shared memory parallel computation
SPAA '90 Proceedings of the second annual ACM symposium on Parallel algorithms and architectures
The expected advantage of asynchrony
SPAA '90 Proceedings of the second annual ACM symposium on Parallel algorithms and architectures
Efficient robust parallel computations
STOC '90 Proceedings of the twenty-second annual ACM symposium on Theory of computing
Combining tentative and definite executions for very fast dependable parallel computing
STOC '91 Proceedings of the twenty-third annual ACM symposium on Theory of computing
Efficient parallel algorithms on restartable fail-stop processors
PODC '91 Proceedings of the tenth annual ACM symposium on Principles of distributed computing
STOC '92 Proceedings of the twenty-fourth annual ACM symposium on Theory of computing
Space-efficient scheduling of multithreaded computations
STOC '93 Proceedings of the twenty-fifth annual ACM symposium on Theory of computing
Clock construction in fully asynchronous parallel systems and PRAM simulation
Theoretical Computer Science - Special issue on dependable parallel computing
Executing multithreaded programs efficiently
Executing multithreaded programs efficiently
Efficient execution of nondeterministic parallel programs on asynchronous systems
Information and Computation
Thread scheduling for multiprogrammed multiprocessors
Proceedings of the tenth annual ACM symposium on Parallel algorithms and architectures
Minimizing the flow time without migration
STOC '99 Proceedings of the thirty-first annual ACM symposium on Theory of computing
SODA '97 Proceedings of the eighth annual ACM-SIAM symposium on Discrete algorithms
The Parallel Evaluation of General Arithmetic Expressions
Journal of the ACM (JACM)
Fault-Tolerant Parallel Computation
Fault-Tolerant Parallel Computation
Operating Systems Theory
The Impact of Performance Asymmetry in Emerging Multicore Architectures
Proceedings of the 32nd annual international symposium on Computer Architecture
Scheduling DAGs on asynchronous processors
Proceedings of the nineteenth annual ACM symposium on Parallel algorithms and architectures
Efficient operating system scheduling for performance-asymmetric multi-core architectures
Proceedings of the 2007 ACM/IEEE conference on Supercomputing
Non-clairvoyant speed scaling for batched parallel jobs on multiprocessors
Proceedings of the 6th ACM conference on Computing frontiers
Scheduling dynamically spawned processes in MPI-2
JSSPP'06 Proceedings of the 12th international conference on Job scheduling strategies for parallel processing
Adaptive encoding of multimedia streams on MPSoC
ICCS'06 Proceedings of the 6th international conference on Computational Science - Volume Part IV
Improving performance of adaptive component-based dataflow middleware
Parallel Computing
Energy-efficient work-stealing language runtimes
Proceedings of the 19th international conference on Architectural support for programming languages and operating systems
Adaptive workload-aware task scheduling for single-ISA asymmetric multicore architectures
ACM Transactions on Architecture and Code Optimization (TACO)
Hi-index | 0.00 |
We study the problem of executing parallel programs, in particular Cilk programs, on a collection of processors of different speeds. We consider a model in which each processor maintains an estimate of its own speed, where communication between processors has a cost, and where all scheduling must be online. This problem has been considered previously in the fields of asynchronous parallel computing and scheduling theory. Our model is a bridge between the assumptions in these fields. We provide a new more accurate analysis of of an old scheduling algorithm called the maximum utilization scheduler. Based on this analysis, we generalize this scheduling policy and define the high utilization scheduler. We next focus on the Cilck platform and introduce a new algorithm for scheduling Cilk multithreaded parallel programs on heterogeneous processors. This scheduler is inspired by the high utilization scheduler and is modified to fit in a Cilk context. A crucial aspect of our algorithm is that it keeps the original spirit of the Cilk scheduler. In fact, when our new algorithm runs on homogeneous processors, it exactly mimics the dynamics of the original Cilk scheduler.