Genetic algorithm based heuristics for the mapping problem
Computers and Operations Research - Special issue on genetic algorithms
Evaluation of a CPU scheduling mechanism for multimedia systems
Software—Practice & Experience
Static scheduling algorithms for allocating directed task graphs to multiprocessors
ACM Computing Surveys (CSUR)
HCW '98 Proceedings of the Seventh Heterogeneous Computing Workshop
Pfair Scheduling of Fixed and Migrating Periodic Tasks on Multiple Resources
RTSS '99 Proceedings of the 20th IEEE Real-Time Systems Symposium
A set of schedulers for grid networks
Proceedings of the 2007 ACM symposium on Applied computing
Soft Real-Time Scheduling on Performance Asymmetric Multicore Platforms
RTAS '07 Proceedings of the 13th IEEE Real Time and Embedded Technology and Applications Symposium
Hi-index | 0.00 |
General-purpose CPUs with multiple cores are established products, and new heterogeneous technology like the Cell broadband engine and general-purpose GPUs bring an even higher degree of true multi-processing into the market. However, means for utilizing the processing power is immature. Current tools typically assume that exclusive use of these resources is sufficient, but this assumption will soon be invalid because the interest in using their processing power for general-purpose tasks. Among the applications that can benefit from such technology is transcoding support for distributed media applications, where remote participants join and leave dynamically. Transcoding consists of several clearly separated processing operations that consume a lot of resources, such that individual processing units are unable to handle all operations of a session of arbitrary size. The individual operations can then be distributed over several processing units, and data must be moved between them according to the dependencies between operations. Many multi-processor scheduling approaches exist, but to the best of our knowledge, a challenge is still to find mechanisms that can schedule dynamic workloads of communicating operations while taking both the processing and communication requirements into account. For such applications, we believe that feasible scheduling can be performed in two levels, i.e., divided into the task of placing a job onto a processing unit and the task of multitasking time-slices within a single processing unit. We have implemented some simple high-level scheduling mechanisms and simulated a video conferencing scenario running on topologies inspired by existing systems from Intel, AMD, IBM and nVidia. Our results show the importance of using an efficient high-level scheduler.