资源配置
资源配置功能在 ClearML 企业版计划下可用。
管理员可以定义资源策略,为不同的用户群组实施资源配额和预留,以优先分配可用资源上的工作负载使用。
在资源配置部分下,管理员定义了可用资源以及如何将它们分配给不同的工作负载。
资源配置设置页面显示了当前已配置的设置:定义的资源池、资源配置文件以及资源分配架构。
资源池
资源池是可供使用的资源的集合,例如 Kubernetes 集群或 GPU SuperPOD。管理员指定每个资源池中可用的资源总数。资源策略管理器确保工作负载分配不超过可用资源数量。
管理员控制资源池中不同资源配置文件之间的执行优先级(例如,如果配置文件 A 的作业和配置文件 B 的作业当前需要在资源池中运行,优先为配置文件 A 的作业分配资源,反之亦然)。
资源池卡片显示在资源配置设置页面的顶部。每张卡片显示以下信息:
- 资源池名称
- 当前使用的资源数占可用资源总数的比例
- 执行优先级 - 已链接配置文件的列表,按执行优先级排序。
资源配置文件
资源配置文件代表了作业的资源消耗需求,例如所需的 GPU 数量。它们是管理员用来通过资源策略根据用户的作业资源需求提供可用资源池访问的接口。
管理员可以控制配置文件中的资源池分配优先级(例如,只有当资源池 A
当前无法满足配置文件的资源需求时,才在 资源池 B
上运行作业)。
管理员可以控制使用该配置文件的资源策略之间的排队优先级(例如,如果研发团队和 DevOps 团队都有待处理的作业,则优先运行研发团队的作业,反之亦然)。
资源配置文件卡片显示在资源配置设置页面的底部。每张卡片显示以下信息:
- 配置文件名称
- 分配给此配置文件中作业的资源数量
- 资源池链接列表
- 当前待处理的作业数量
- 当前正在运行的作业数量
- 资源策略数量。点击可打开资源策略列表并设置排队优先级。
示例工作流程
您在本地 H100 和额外的裸金属服务器上以及 AWS(由自动伸缩器管理)上部署了 GPU。假设当前您的大部分资源已分配给作业,只有 16 个资源可用:H100 资源池中有 8 个,裸金属资源池中有 8 个。
团队的作业有不同的资源需求,分别为 0.5、2、4 和 8 个 GPU。资源配置文件被定义来反映这些需求。
通过将配置文件连接到资源池,不同的作业将被路由到不同的资源池。通过配置文件入队的作业将在有可用资源的资源池中按照其优先级顺序运行。例如,H100 资源池将按照以下优先级运行作业:先运行 2 个 GPU 的作业,然后是 4 个 GPU 的作业,接着是 8 个 GPU 的作业,最后是 0.5 个 GPU 的作业。
为两个团队实施了资源策略:
- 开发团队
- 研究团队
每个团队都配置了一个资源策略,其中预留了 8 个资源,资源限制为 16 个。两个团队都使用了 4xGPU 配置文件(即通过此配置文件运行的每个作业需要 4 个资源)。
通过将开发团队的资源策略放置在资源配置文件的“策略优先级”列表中的更靠前位置,开发团队优先于研究团队。
开发团队和研究团队都各自将四个 4 资源作业入队:开发团队的作业将首先获得资源分配。4xGPU
资源配置文件连接到两个资源池:Bare Metal Low END GPUs
(通过 4 GPU Low End
链接)和 H100 Half a Superpod
(通过 4 GPU H100 link
链接)。
资源优先从 Bare Metal
资源池分配(优先级设置在资源配置文件卡片上)。
如果第一个资源池当前无法满足配置文件的资源需求,则从下一个列出的资源池分配资源。让我们看看下图中的第一个资源池。注意该资源池有 8 个可用资源,因此可以运行两个 4 资源作业。
由于裸金属资源池没有更多可用资源,额外的作业将从资源配置文件连接到的下一个资源池中分配资源。H100 资源池有 8 个可用资源。开发团队仍有 2 个作业待处理,总共需要 8 个资源;研究团队仍有 4 个作业待处理,总共需要 16 个资源。为了遵守研究团队的资源预留,其前两个作业将从 H100 资源池中分配所需的 8 个资源。
所有可用资源分配完毕后,每个团队的 2 个作业将保持待处理状态,直到当前正在运行的一些作业完成并有资源可用。
应用资源配置
管理员可以全局启用/禁用资源策略管理。要启用当前已配置的设置,请点击 Enable resource management
(启用资源管理)切换按钮。启用资源管理将根据已配置的资源配置文件和资源池分配来处理策略队列。禁用资源管理将停止处理策略队列。这些队列中的任务将保持待处理状态,直到重新启用资源策略管理。
管理员可以在资源配置设置页面中添加、编辑、删除和连接资源池和配置文件。
要对资源配置进行任何更改(创建、删除或修改组件),请按照以下步骤操作:
- 点击 Open Editor(打开编辑器)进入编辑模式。
- 完成所需的更改后,您有以下选项:
- 保存 - 保存您所做的更改。这些更改在您点击“配置”(Provision)之前不会生效。
- 配置 - 应用资源策略的已保存更改。
- 重置配置 - 将编辑器设置回当前已配置的值。这将删除所有未配置的更改(包括已保存和未保存的)。
- 点击 Exit(退出)离开编辑模式。页面将显示已配置的设置。未配置的已保存更改仍可在编辑模式下查看。
资源池
创建资源池:
- 点击 + Add Pool(+ 添加资源池)
- 在 Create Pool(创建资源池)模态框中,输入:
- 名称 - 资源池的名称。此名称将显示在资源配置设置页面的资源池信息卡片中。
- 资源数量 - 此资源池中可用的资源数量。
- 描述 - 可选的自由文本,用于提供额外的描述性信息。
- 点击 Create(创建)
修改资源池:
- 点击相关资源池卡片上的
> 点击 Edit(编辑)。
- 在 Edit Pool(编辑资源池)模态框中,修改资源池的名称、资源数量或描述。
- 点击 Save(保存)
您还可以更改已链接资源配置文件的执行优先级。点击并拖动配置文件连接锚点 来改变其在优先级顺序中的位置。
资源配置文件
创建资源配置文件:
- 点击 + Add Profile(+ 添加配置文件)
- 在 Create Profile(创建配置文件)模态框中,输入:
- 名称 - 资源配置文件的名称。此名称将显示在资源配置设置页面的配置文件信息卡片中。
- 资源配额 - 分配给此配置文件中每个运行作业的资源数量。
- 点击 Create(创建)
修改资源配置文件:
- 点击相关资源配置文件卡片上的
> 点击 Edit(编辑)。
- 在 Edit Profile(编辑配置文件)模态框中,修改配置文件的名称、资源配额或描述。
- 点击 Save(保存)
要控制优先分配哪个资源池的资源,点击并拖动资源池连接锚点 来改变其在优先级顺序中的位置。
您还可以更改使用此配置文件的资源策略的执行优先级。打开策略列表,然后点击策略锚点 并拖动策略来改变其在优先级顺序中的位置。
删除资源配置文件:
- 点击相关资源配置文件卡片上的
- 点击 Delete(删除)
连接配置文件到资源池
将资源配置文件连接到资源池,以允许分配给该配置文件的作业使用该资源池的资源。
连接配置文件到资源池:
- 点击 Open Editor(打开编辑器)
- 将相关配置文件的
拖动到您想要连接到的资源池。这将打开 Connect Profile(连接配置文件)模态框。
- 在 Connect Profile(连接配置文件)模态框中,为此连接输入一个名称。此连接名称将显示在配置文件卡片上。
设置页面将显示一条连接配置文件和资源池卡片的线。已链接的配置文件显示在资源池卡片上,显示其在执行顺序中的位置。要更改配置文件的优先级位置,拖动其连接锚点 到新位置。
断开配置文件与资源池的连接:
- 点击 Open Editor(打开编辑器)
- 在相关配置文件卡片上,将鼠标悬停在连接名称上,然后点击
X
。
分配到此资源配置文件的作业将不再能够利用该资源池的资源。