A dynamic processor allocation policy for multiprogrammed shared-memory multiprocessors

A dynamic processor allocation policy for multiprogrammed shared-memory multiprocessors
复制标题

DOI:
10.1145/151244.151246
复制
发表时间:
1993-05
期刊:
ACM Trans. Comput. Syst.
影响因子:
--
通讯作者:
Cathy McCann;R. Vaswani;J. Zahorjan
Cathy McCann;R. Vaswani;J. Zahorjan
中科院分区:
其他
文献类型:
--
作者:
Cathy McCann;R. Vaswani;J. Zahorjan

文献摘要

被引文献

相似文献

我们提出并评估经验的多程序共享内存多处理器的动态处理器调度策略的性能。该策略是动态的,因为它重新分配处理器从一个并行作业到另一个的基础上,目前实现的并行这些作业。该策略适合在生产系统中实现,因为:-它与非常有效的用户级线程包交互良好,将许多不需要内核干预的低级线程操作留给它们。它处理由于用户I/O和页面错误而导致的线程阻塞。- 确保公平地为就业提供资源。- 以平均工作响应时间衡量,其性能上级以前提议的系统,包括在现有系统中实施的系统。它为非常短的、顺序的(例如,交互式)请求。我们已经评估了我们的调度程序,并比较它的替代品使用一组原型实现上运行的顺序对称多处理器。使用一些具有不同的定性行为的并行应用程序,我们都评估了政策的整体性能的主要标准,并研究了一些更一般的政策问题,包括“空间共享”的优势超过“时间共享”的多处理器的处理器,以及内核和应用程序之间的合作在重新分配处理器之间的作业的重要性。我们还比较了政策根据其他critea重要的真实的实现,特别是公平性和响应时间短,顺序的请求。我们的结论是,性能和实现的考虑相结合,使我们的动态调度政策的一个令人信服的情况下。
We propose and evaluate empirically the performance of a dynamic processor-scheduling policy for multiprogrammed shared-memory multiprocessors. The policy is dynamic in that it reallocates processors from one parallel job to another based on the currently realized parallelism of those jobs. The policy is suitable for implementation in production systems in that: —It interacts well with very efficient user-level thread packages, leaving to them many low-level thread operations that do not require kernel intervention. —It deals with thread blocking due to user I/O and page faults. —It ensures fairness in delivering resources to jobs. —Its performance, measured in terms of average job response time, is superior to that of previously proposed schedulers, including those implemented in existing systems. It provides good performance to very short, sequential (e.g., interactive) requests. We have evaluated our scheduler and compared it to alternatives using a set of prototype implementations running on a Sequent Symmetry multiprocessor. Using a number of parallel applications with distinct qualitative behaviors, we have both evaluated the policies according to the major criterion of overall performance and examined a number of more general policy issues, including the advantage of “space sharing” over “time sharing” the processors of a multiprocessor, and the importance of cooperation between the kernel and the application in reallocating processors between jobs. We have also compared the policies according to other criteia important in real implementations, in particular, fairness and respone time to short, sequential requests. We conclude that a combination of performance and implementation considerations makes a compelling case for our dynamic scheduling policy.