Process Management for Highly Parallel Unix Systems

Process Management for Highly Parallel Unix Systems
复制标题

高度并行 Unix 系统的进程管理

DOI:
--
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
E. Schonberg
E. Schonberg
中科院分区:
--
文献类型:
--
作者:
J. Edler;J. Lipkis;E. Schonberg

文献摘要

被引文献

相似文献

尽管仅在单层处理器上进行早期开发,但越来越多的UNIX系统可用于共享内存(MIMD)多处理器。尽管这种趋势的大部分是由UNIX界面作为新兴行业标准的一般成功所驱动的,但经验表明,基本的UNIX设计适合这种环境。相对简单的扩展(例如共享内存和同步机制)足以用于许多并行程序。尽管可以简单的方式满足简单的需求,但支持更复杂的应用程序的愿望却造成了越来越复杂的扩展。有更好的方法可以满足此类需求吗?尽管有人认为是时候完全放弃UNIX模型了,但我们认为在传统框架内存在可行的替代方案。在本文中,我们建议对UNIX内核的流程管理设施进行一些修改。其中一些主要是对并行处理的兴趣,例如可以有效地创建许多过程的广义叉系统调用,而另一些则在其他情况下同样具有吸引力,例如改善I/O和IPC性能的机制。尽管主要目标是提高了性能和可靠性,但采取了强有力的审美判断来创建整体整合的总设计。尽管此处提出的概念适用于任何UNIX环境,但它们是在非常大的平行计算的背景下进行的,具有数百或数千个处理器。 NYU Ultraccuter原型和IBM RP3目前正在进行这些扩展的初始实现。
Despite early development exclusively on uniprocessors, a growing number of UNIX systems are now available for shared memory (MIMD) multiprocessors. While much of this trend has been driven by the general success of the UNIX interface as an emerging industry standard, experience has shown that the basic UNIX design is amenable to such environments. Relatively simple extensions such as shared memory and synchronization mechanisms suffice for many parallel programs. While simple needs can be satisfied in a simple fashion, the desire to support more sophisticated applications has created pressure for ever more complex extensions. Is there a better way to meet such needs? Although some argue that it is time to abandon the UNIX model completely, we believe that viable alternatives exist within the traditional framework. In this paper we propose several modifications to the process management facilities of the UNIX kernel. Some of them are primarily of interest for parallel processing, such as a generalized fork system call that can efficiently create many processes at once, while others are equally attractive in other contexts, such as mechanisms for improved I/O and IPC performance. While the primary goals are improved performance and reliability, a strong aesthetic judgement is applied to create a total design that is cohesively integrated. While the concepts presented here are applicable to any UNIX environment, they have been conceived in the context of very large scale parallel computing, with hundreds or thousands of processors. An initial implementation of these extensions is currently underway for the NYU Ultracomputer prototype and the IBM RP3.