分布式计算中的资源调度与检查点间隔优化
1. 分布式计算中的槽位选择与协同分配
在分布式计算环境中,独立批处理作业的调度是一个关键问题,尤其是在异构环境且资源非专用的情况下。为了解决这一问题,提出了 ALP 和 AMP 两种槽位搜索与协同分配的方法。
1.1 调度步骤
调度作业批处理主要包括两个步骤:
1. 为批处理中的每个作业找到合适的槽位独立集合(执行替代方案)。
2. 选择替代槽位集合的有效组合,即批处理的槽位集合。
1.2 ALP 与 AMP 方法对比
| 方法 | 优点 | 缺点 |
|---|---|---|
| ALP | - | 找到的执行替代方案相对较少 |
| AMP | 平均能找到更快速的替代方案,作业执行时间更短;在相同的空闲槽位集合上,比 ALP 能多找到几倍的执行替代方案;在批处理执行时间最小化方面显著超过 ALP | 作业批处理执行成本相对较高 |
1.3 成本分析
AMP 算法在寻找合适替代方案时会使用整个预算来寻找最早的合适替代,这导致平均作业执行成本较高。不过,通过减少搜索过程中找到的每个替代方案的用户预算限制,可以降低作业批处理执行成本。原公式 $C_{tN}^S$ 可修改为 $C_{tN}^S \rho$,其中 $\rho$ 是小于 1 的正数,如 0.8。$\rho$ 的变化可以根据一天中的时间、资源负载水平等因素,在不同的调度周期内获得灵活的分配调度。
1.4 算法工作情况
在同一组槽位上,任何能用 ALP 找到的窗口也可以用 AMP 找到,但 AMP 可能找到一些传统 ALP 找不到的窗口,只要该窗口包含至少一个成本超过 C 的槽位即可。
2. 资源最优检查点间隔的初步近似
2.1 研究背景
随着现代计算集群可扩展性的增加以及解决更大、更复杂问题的需求,可靠性对于高性能计算(HPC)的发展至关重要。同时,高性能计算云作为一种新的按需付费模式出现,提供了对各种资源的访问。因此,研究如何根据开销时间、CPU、RAM 和 I/O 成本来设置最佳检查点间隔具有重要意义。
2.2 模型制定
2.2.1 主要资源及目标
计算系统的主要资源包括 CPU 时间、RAM 内存、存储系统(磁盘内存)和时间(等待结果),每个资源都有相关的成本。目标是最小化总体解决方案成本。
2.2.2 模型假设
研究的计算过程包括几个资源负载大致均匀的阶段,在这个模型中考虑资源负载均匀的阶段,并假设检查点资源成本和时间开销在该阶段的每个时刻都相似。
2.3 相关工作
- 一些研究致力于优化程序执行的总体时间,如 Young 提出了重启转储的最佳检查点间隔的有用近似,Daly 提出了更高阶的估计等。
- “Cost-Based Oracle Fundamentals”根据数据分布统计和硬件性能估计查询成本,Oracle 使用成本概念来提供向后兼容性和优化查询成本。
2.4 一阶近似
2.4.1 总成本公式
$Total\ cost = solution\ cost + recomputation\ cost + checkpointing\ cost$
2.4.2 参数定义
- $\tau$:转储之间可优化的检查点间隔。
- $T_s$:解决方案时间,$T_s = N \cdot \tau$,其中 $N$ 是间隔数。
- $\delta$:保存检查点数据的时间。
- $\mu$:除时间外的解决方案资源。
- $\gamma$:除时间外保存检查点数据所需的资源量。
- $M$:系统的平均中断时间。
2.4.3 具体公式推导
根据上述参数和假设,经过一系列推导,得到最终的评估函数:
$R(\tau) = k(T_s + (\frac{T_s}{\tau} - 1)\delta + [\tau + \delta] \cdot \frac{1}{2} \cdot \frac{T_s}{\tau} \cdot (\frac{\tau + \delta}{M})) + \mu + (\frac{T_s}{\tau} - 1)\gamma + [\frac{\mu\tau}{T_s} + \gamma] \cdot \frac{1}{2} \cdot \frac{T_s}{\tau} \cdot (\frac{\tau + \delta}{M})$
为了找到最优的 $\tau$ 值,对评估函数求一阶导数,并假设 $\delta$ 的平方项可忽略不计,得到唯一的正解:
$\tau = \sqrt{\frac{2kT_sM\delta + 2MT_s\gamma + T_s\delta\gamma}{\mu + kT_s}}$
2.5 示例计算
以 Amazon EC2 的资源价格为例,对于 CPU 密集型实例的超大问题,CPU 成本为每小时 $0.68,内存为 $0.50,每百万 I/O 请求为 $0.10。资源成本将根据这些价格确定加权和。通过代入具体数值,如 $M = 30000$,$k = 7.25$,$a_1 = 350$,$a_2 = 300$,$a_3 = 150$,$b_1 = 3$,$b_2 = 2$,$b_3 = 4$,得到最优时间间隔为 $\tau = 190.9$ 小时。而在原 Young 近似中,代入相应数值得到 $\tau = 109.5$ 小时,这表明时间最优和资源最优的时间间隔可能存在显著差异。
2.6 模型局限性
推导得到的公式仅在一阶近似下定义了最优间隔,存在较大局限性,如未考虑检查点成本的可变性、计算成本的模糊性以及过程阶段与检查点成本之间的依赖性等重要事实。
分布式计算中的资源调度与检查点间隔优化
3. 分布式计算调度方法总结与展望
3.1 调度方法总结
在分布式计算中,ALP 和 AMP 两种方法在独立批处理作业调度方面各有优劣。ALP 方法相对保守,找到的执行替代方案较少;而 AMP 方法虽然能平均找到更快速的替代方案,在批处理执行时间最小化方面表现出色,且能找到更多的执行替代方案,但作业批处理执行成本相对较高。不过,通过调整用户预算限制公式 $C_{tN}^S \rho$ 中的 $\rho$ 值($\rho$ 是小于 1 的正数),可以在一定程度上降低成本,实现不同调度周期的灵活分配调度。
3.2 未来研究方向
未来的研究将聚焦于以下几个方面:
-
整体作业批处理槽位选择
:不再逐个为每个作业选择槽位,而是一次性为整个作业批处理选择槽位,并在调度过程中实时优化调度,避免在每个调度迭代中专门分配一个阶段进行优化。
-
定价机制研究
:研究考虑虚拟组织中计算资源供需趋势的定价机制,以更好地平衡资源分配和成本。
-
动态环境适应
:由于分布式环境的动态性,如作业数量变化、计算量波动、计算节点可能出现故障等,需要制定一套调度版本或策略,而不是单一的调度版本。
-
资源协同分配算法优化
:进一步完善资源协同分配算法,使其与可扩展的协同调度策略集成。
3.3 动态环境下调度策略的重要性
在分布式计算中,动态环境的变化对作业执行的可靠性和效率产生了重要影响。以下是动态环境变化的主要因素以及相应的应对策略:
| 动态因素 | 影响 | 应对策略 |
| ---- | ---- | ---- |
| 作业数量变化 | 可能导致资源竞争加剧或资源利用率低下 | 实时调整调度策略,根据作业数量动态分配资源 |
| 计算量波动 | 影响作业执行时间和资源需求 | 采用自适应调度算法,根据计算量实时调整资源分配 |
| 计算节点故障 | 可能导致作业失败或执行时间延长 | 制定容错调度策略,如备份节点、任务迁移等 |
3.4 未来研究方向的流程图
graph LR
A[整体作业批处理槽位选择] --> B[实时优化调度]
C[定价机制研究] --> D[考虑供需趋势]
E[动态环境适应] --> F[制定调度策略]
G[资源协同分配算法优化] --> H[集成可扩展策略]
B --> I[提高调度效率]
D --> I
F --> I
H --> I
4. 资源最优检查点间隔研究总结与展望
4.1 研究成果总结
本研究提出了一种考虑所有计算资源(包括 CPU、RAM、磁盘操作和执行时间)的最优检查点间隔的初步近似方法。通过建立成本模型,推导出了一阶近似下的最优检查点间隔公式:
$\tau = \sqrt{\frac{2kT_sM\delta + 2MT_s\gamma + T_s\delta\gamma}{\mu + kT_s}}$
该公式是 Young 时间最优解决方案的自然扩展,可用于近似计算成本最优和时间最优的检查点间隔。
4.2 未来研究方向
未来的研究将朝着以下几个方向发展:
-
高阶近似研究
:考虑更复杂的因素,进行资源最优检查点间隔的高阶近似研究,以提高模型的准确性。
-
复杂问题应用
:探索资源最优检查点间隔在实际复杂问题中的应用,如复杂执行图的作业、并行任务等。
-
容错机制优化
:结合故障无关编程模型,利用资源最优时间间隔,优化容错机制,减少开销,避免同步问题。
4.3 复杂问题应用的具体思路
在复杂问题应用方面,将采取以下具体思路:
1.
并行任务处理
:将并行任务和中间结果的保存与资源最优时间间隔相结合,根据每个节点和每个计算分支的资源最优时间间隔分别保存任务和结果。
2.
事务和函数概念应用
:将并行任务类比为数据库事务,遵循“全有或全无”原则和“纯”函数概念,确保任务的一致性和可重复性。
3.
硬件事件观察
:使用简化测试执行和特殊工具观察硬件事件和负载,以更好地了解每个任务的 CPU/内存占用情况。
4.4 未来研究方向的表格总结
| 研究方向 | 具体内容 |
|---|---|
| 高阶近似研究 | 考虑更复杂因素,提高模型准确性 |
| 复杂问题应用 | 探索在复杂执行图作业、并行任务中的应用 |
| 容错机制优化 | 结合故障无关编程模型,优化容错机制 |
综上所述,分布式计算中的资源调度和检查点间隔优化是一个具有挑战性和重要意义的研究领域。通过不断探索和研究,有望在提高计算效率、降低成本、增强可靠性等方面取得更好的成果。
超级会员免费看

被折叠的 条评论
为什么被折叠?



