Containerization technology offers lightweight OS-level virtualization, and enables portability, reproducibility, and flexibility by packing applications with low performance overhead and low effort to maintain and scale them. Moreover, container orchestrators (e.g., Kubernetes) are widely used in the Cloud to manage large clusters running many containerized applications. However, scheduling policies that consider the performance nuances of containerized High Performance Computing (HPC) workloads have not been well-explored yet. This paper conducts fine-grained scheduling policies for containerized HPC workloads in Kubernetes clusters, focusing especially on partitioning each job into a suitable multi-container deployment according to the application profile. We implement our scheduling schemes on different layers of management (application and infrastructure), so that each component has its own focus and algorithms but still collaborates with others. Our results show that our fine-grained scheduling policies outperform baseline and baseline with CPU/memory affinity enabled policies, reducing the overall response time by 35% and 19%, respectively, and also improving the makespan by 34% and 11%, respectively. They also provide better usability and flexibility to specify HPC workloads than other comparable HPC Cloud frameworks, while providing better scheduling efficiency thanks to their multi-layered approach.
翻译:此外,集装箱管弦乐器(例如Kubernetes)在云中被广泛用于管理管理管理许多集装箱化应用的大型集群。然而,考虑到集装箱化高性能计算(HPC)工作量的性能细微差别的政策尚未很好探讨。本文件对库伯涅茨集群集装箱化高PC工作量作了细微的时间安排政策,分别将整体反应时间减少35%和19%,同时根据应用概况将每个工作分成适当的多集装箱部署。我们在不同管理层次(应用程序和基础设施)执行我们的时间安排计划,使每个组成部分都有自己的重点和算法,但仍与其他部分合作。我们的成果显示,我们微小的时间安排政策比CPU/模拟的使政策更符合基准和基线,分别将总反应时间减少35%和19%,并分别提高34%和11%,同时提高HPC工作的灵活性,提高HPC工作效率。