![【论文】略读笔记44-前沿-影子资源利用](https://d3i71xaburhd42.cloudfront.net/591292145f6d069212f307f3bf3440598257b70e/6-Figure5-1.png)
【论文】略读笔记44-前沿-影子资源利用
![](/images/MessAround.jpeg)
📖《Not All Resources are Visible: Exploiting Fragmented Shadow Resources in Shared-State Scheduler Architecture》
🎯需求
- 随着云计算的快速发展,集群规模和任务并行性的不断提高对大规模调度能力提出了更高的要求。
- 近年来,随着云计算市场的快速发展,集群规模不断扩大,有些集群包含成千上万台机器,并部署在各种云服务上,包括虚拟机、容器、微服务和功能即服务平台。此外,百万级并发提交和执行秒级甚至毫秒级任务,导致对低开销、高利用率和高可扩展性调度架构的需求不断上升。考虑到大规模调度的价值和挑战,谷歌、微软和阿里巴巴等许多 IT 公司都投入了大量资金和工程力量开发此类系统。
- 为此,共享状态调度器架构以其高扩展性和高利用率成为大规模调度的流行解决方案。在这种架构中,中央资源状态视图会定期向分布式调度器更新全局集群状态,以便进行并行调度。
- 鉴于单片调度架构的低可扩展性和两级调度器的低利用率,共享状态调度架构因其高可扩展性和并行调度能力,已成为大规模集群调度中广泛使用的解决方案。
- 在这种架构中,中央资源状态视图会定期向分布式调度器更新全局集群状态,调度器会并行地对接收到的任务做出分配决策。
- 基于最初的共享状态设计,主要云提供商提出并实施了各自的共享状态调度系统,以实现更低的调度延迟、更低的冲突、更高的吞吐量和更高的可扩展性。
🚧现状
- 然而,调度器获得更广泛资源视图的代价是间歇性的陈旧状态,使得调度器在下一次视图更新之前无法看到被释放的资源。本文将这些转瞬即逝的资源片段称为影子资源。当前的共享状态解决方案忽视或未能系统地利用影子资源,导致无法充分利用这些隐形资源。
- 然而,硬币都有两面,共享状态架构也有其不足之处。除了通常研究的调度冲突和调度延迟问题外,周期性全局状态更新设计导致分布式调度器的状态间歇性陈旧,这在以前很少被提及和研究。
- 被释放的资源只对中央状态视图可见,但对所有并行调度器不可见,直到下一次视图更新,这就变成了转瞬即逝的资源片段,被定义为影子资源。
- 隐藏的影子资源超出了正常调度器的调度范围,对共享状态集群造成了极大的浪费。
- 然而,之前关于共享状态架构的研究主要集中在通过先进的调度策略和技术更有效地管理可见资源,而忽略了对不可见影子资源的挖掘和利用。
- 然而,硬币都有两面,共享状态架构也有其不足之处。除了通常研究的调度冲突和调度延迟问题外,周期性全局状态更新设计导致分布式调度器的状态间歇性陈旧,这在以前很少被提及和研究。
🛩创新
- 在本文中,我们通过理论建模和大量实验对影子资源进行了深入分析。
- 更糟糕的是,空间和时间粒度越来越轻。
- 一方面,任务的资源需求也低于传统的资源消耗型单体应用。
- 另一方面,由于云原生技术的出现,短期任务的数量也在不断增加。
- 从图 1 中我们对来自谷歌云(Google Cloud)和阿里巴巴云(Alibaba Cloud)大规模集群的跟踪统计分析来看,任务的资源需求和执行时间近似符合指数分布,这与之前的研究结果一致。
- 图 1 (a) 显示了谷歌云中任务的 CPU 和内存需求,每个任务的平均资源需求约为 0.5% - 1.0%。
- 图 1(b)显示了阿里云中任务的执行时间,任务的时间粒度最近变得越来越细。
- 传统的长期批量工作负载逐渐转向对延迟敏感的短期任务。时空趋势导致资源变化更加频繁和精细,加剧了隐形资源浪费。
- 影子资源很宝贵,但却很难利用。
- 对实际集群中影子资源的理论和实验分析表明,影子资源的数量受视图更新间隔时间(又称更新延迟)和任务平均执行时间的影响,占集群中总体分配资源的 2%-13%,这对于提高资源利用率来说是相当可观和宝贵的。
- 然而,有两个障碍阻碍了影子资源的利用,需要灵活透明的解决方案。
- 首先,稍纵即逝的碎片化特性需要一种灵活的挖掘机制。
- 其次,既要利用影子资源,又要避免干扰正常调度,这一点至关重要。
- 在这项工作中,我们认为共享状态架构需要仔细考虑影子资源。
- 更糟糕的是,空间和时间粒度越来越轻。
- 本文首先增强了共享状态架构的可视性,以支持集群中影子资源的挖掘和利用。为此,我们提出了资源挖掘器(RMiner),它是共享状态架构的一个混合和背面兼容的调度子系统,由三个合作组件组成:
- (1) 影子资源管理器,用于高效检测和组织集群中的影子资源;
- (2) RM 过滤器,用于选择合适的任务来匹配转瞬即逝的碎片;
- (3) RM 调度器,用于以适当的方式将影子资源分配给 RM 任务。
- 此外,我们还通过利用视图更新和实际分配之间的影子资源(又称资源等待延迟),探索了更激进的资源挖掘方法。针对集群管理的不同目标,RMiner 灵活地采用了两种资源挖掘模式:SafeRM 和 SmartRM,以平衡资源利用率最大化和冲突最小化。
- 总之,本文做出了以下贡献:
- a. 我们发现了共享状态调度架构中的隐形片段资源机会,并对其进行了理论和实验分析。
- b. 我们介绍了 RMiner,这是共享状态架构的一个新颖子系统,用于提高当前设计的空间和时间可见性。RMiner 挖掘和利用不可见的影子资源,并进一步增强了管理的积极性和灵活性。
- c. 我们构建并优化了 RMiner 的工业集群模拟器,结果表明,它能以较小的开销大幅提高集群性能。
📊效果
- 为了全面评估 RMiner,我们在工业集群模拟器和开源跟踪工具的基础上进行了跟踪驱动实验。
- 我们模仿现实的共享状态调度过程,并使用高保真任务执行跟踪作为输入。
- 我们的研究表明,RMiner 的性能优于传统的共享状态调度器,资源利用率最高可达 5.8%,总体吞吐量最高可达 28%,作业等待时间最高可达 59.9%。
- 更具体地说,我们可以利用高达 112% 的影子资源,而冲突和调度开销仅增加不到 3%。
🧠疑问
- 研究现状部分忽略了Fuxi2.0的分区同步,这篇工作与其关联是什么?是正交的(互不干扰,互相弥补)吗?
- 希望这篇博客对你有帮助!如果你有任何问题或需要进一步的帮助,请随时提问。
- 如果你喜欢这篇文章,欢迎动动小手 给我一个follow或star。
🗺参考文献
- 标题: 【论文】略读笔记44-前沿-影子资源利用
- 作者: Fre5h1nd
- 创建于 : 2024-07-03 10:19:55
- 更新于 : 2024-07-03 10:38:02
- 链接: https://freshwlnd.github.io/2024/07/03/literature/literatureNotes44/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论