调度概述
CCE支持不同类型的资源调度及任务调度等,可提升应用的性能和集群整体资源的利用率。本文介绍CPU资源调度、GPU/NPU异构资源调度、Volcano调度的主要功能。
CPU调度
CCE提供CPU管理策略为应用分配完整的CPU物理核,提升应用性能,减少应用的调度延迟。
功能 |
描述 |
参考文档 |
---|---|---|
CPU管理策略 |
当节点上运行了很多 CPU 密集的 Pod 时,工作负载可能会迁移到不同的 CPU 核。许多应用对这种迁移不敏感,因此无需任何干预即可正常工作。有些应用对CPU敏感,对于CPU敏感型应用,您可以利用Kubernetes中提供的CPU管理策略为应用分配独占核,提升应用性能,减少应用的调度延迟。 |
|
增强型CPU管理策略 |
增强型CPU管理策略(enhanced-static),是在兼容静态绑核CPU管理策略的基础上,新增一种符合某些资源特征的Burstable Pod(CPU的Request和Limit值都是正整数)优先使用某些CPU的能力,以减少应用在多个CPU间频繁切换带来的影响。 |
GPU调度
CCE为集群中的GPU异构资源提供调度能力,支持在容器中使用GPU显卡。
功能 |
描述 |
参考文档 |
---|---|---|
Kubernetes默认GPU调度 |
Kubernetes默认GPU调度可以指定Pod申请GPU的数量,支持申请设置为小于1的数量,实现多个Pod共享使用GPU。 |
NPU调度
CCE为集群中的NPU异构资源提供调度能力,实现快速高效地处理推理和图像识别等工作。
功能 |
描述 |
参考文档 |
---|---|---|
NPU调度 |
NPU调度可以指定Pod申请NPU的数量,为工作负载提供NPU资源。 |
Volcano调度
Volcano是一个基于Kubernetes的批处理平台,提供了机器学习、深度学习、生物信息学、基因组学及其他大数据应用所需要而Kubernetes当前缺失的一系列特性,提供了高性能任务调度引擎、高性能异构芯片管理、高性能任务运行管理等通用计算能力。
功能 |
描述 |
参考文档 |
---|---|---|
资源利用率优化调度 |
针对计算资源进行优化的调度策略,可以有效减少各节点资源碎片,最大化地提高计算资源的利用率。 |
|
业务优先级保障调度 |
根据业务的重要性和优先级,设置自定义的策略对业务占用的资源进行调度,确保关键业务的资源优先级得到保障。 |
|
AI任务性能增强调度 |
根据AI任务的工作性质、资源的使用情况,设置对应的调度策略,可以增强集群业务的吞吐量,提高业务运行性能。 |
|
NUMA亲和性调度 |
Volcano可解决调度程序NUMA拓扑感知的限制,实现以下目标:
|