读者

这篇文章来自2021的SOSP,单位是斯坦福大学和微软。选该文章的理由有二,一是资源分配的主题较为相关;二是文章结构、语言很清晰,读起来很舒服。

本文的中心思想可以概括为:分化瓦解,各个击破。即,用线性规划的方式解决资源分配问题太昂贵,而启发式算法难以达到最优,且缺乏可扩展性(适应范围小,一改条件就失效)。所以该文通过将原始LP重写,得到各个部分的小LP,分别求解再组合。

注:以下翻译主要来自百度翻译(https://fanyi.baidu.com)和手动修正。

摘要

许多计算机系统中的资源分配问题都可以表述为数学优化问题。然而,对于具有严格SLA的大型问题,使用现成的求解器来寻找这些问题的精确解决方案往往很难,这导致系统设计师依赖廉价的启发式算法。然而,我们观察到,许多分配问题是颗粒的:它们由大量的客户机和资源组成,每个客户机请求的资源只占资源总数的一小部分,客户机可以互换使用不同的资源。对于这些问题,我们提出了一种替代方法,该方法重用原始优化问题公式,并导致比特定领域的启发式方法更好的分配。我们的技术是分区优化问题(Partitioned Optimization Problems,POP),它将问题随机分解为更小的问题(系统中有一部分客户端和资源),并将生成的子分配合并为所有客户端的全局分配。我们提供了理论和经验证据来解释为什么随机划分效果很好。在我们的实验中,与现有的集群调度、流量工程和负载平衡系统相比,POP实现了在最优解的1.5%范围以内,数个数量级的运行时间改进。

Solving Large-Scale Granular Resource Allocation Problems Efficiently with POP(2021-POP-SOSP-文献阅读笔记)的更多相关文章

  1. 大规模视觉识别挑战赛ILSVRC2015各团队结果和方法 Large Scale Visual Recognition Challenge 2015

    Large Scale Visual Recognition Challenge 2015 (ILSVRC2015) Legend: Yellow background = winner in thi ...

  2. hdu 3288 Resource Allocation

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3288 Resource Allocation Description HDU-Sailormoon i ...

  3. Lessons learned developing a practical large scale machine learning system

    原文:http://googleresearch.blogspot.jp/2010/04/lessons-learned-developing-practical.html Lessons learn ...

  4. 论文笔记之:Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation

    Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation Google  2016.10.06 官方 ...

  5. 快速高分辨率图像的立体匹配方法Effective large scale stereo matching

    <Effective large scale stereo matching> In this paper we propose a novel approach to binocular ...

  6. Introducing DataFrames in Apache Spark for Large Scale Data Science(中英双语)

    文章标题 Introducing DataFrames in Apache Spark for Large Scale Data Science 一个用于大规模数据科学的API——DataFrame ...

  7. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 17—Large Scale Machine Learning 大规模机器学习

    Lecture17 Large Scale Machine Learning大规模机器学习 17.1 大型数据集的学习 Learning With Large Datasets 如果有一个低方差的模型 ...

  8. [C12] 大规模机器学习(Large Scale Machine Learning)

    大规模机器学习(Large Scale Machine Learning) 大型数据集的学习(Learning With Large Datasets) 如果你回顾一下最近5年或10年的机器学习历史. ...

  9. Spark动态资源分配-Dynamic Resource Allocation

    微信搜索lxw1234bigdata | 邀请体验:数阅–数据管理.OLAP分析与可视化平台 | 赞助作者:赞助作者 Spark动态资源分配-Dynamic Resource Allocation S ...

随机推荐

  1. 搭服务器之kvm--vnc连接虚拟机连接闪退直接消失 以及virsh shutdown命令无效解决办法。

    之前暑期见识到了虚拟化在企业中的应用,感慨不小,以前只是自己在玩儿桌面vmware workstation,安装的虚拟机也没啥大感觉.在公司机房里大家用的dell poweredge 420,8gme ...

  2. [JavaWeb]Log4j的前因后果

    Log4j的前因后果 简介 Log4j的进化史 Log4J的三大组件: Logger:日志记录器,负责收集处理日志记录 (如何处理日志) Appender:日志输出目的地,负责日志的输出 (输出到什么 ...

  3. python 小兵(4)之文件操作

    文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...

  4. 分布式缓存系统——memcache

    一.简介 memcache是一个自由开源的.高性能的.分布式内存对象缓存系统.它是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象).这些数据可以是数据库调用.API调用等. ...

  5. Java 变量的声明及初始化

    格式: 数据类型 变量名字1 , 变量名字2 ,--变量名字n ; 案例: int i 声明了一个整形的变量. double d 声明了一个double数据类型的变量 float  f 声明了一个fl ...

  6. C语言中的单引号和双引号的区别

    首先肯定地说,二者是有区别的,不是说用谁都一样. 1.实质区别,代表的含义不同 'A'代表的是一个整数,而且这个整数对应的是编译器所采用的字符集中的字符序列对应的数值.所以'A'跟ASCII中的65意 ...

  7. maven项目pom文件下载的包放在哪

    右击项目configure bulid path ----->libraries--->maven dependencies 可以看到每个jar的存放路径

  8. java链式创建json对象

    我们主要介绍一下:java中如何通过最简单的方式实现链式创建json对象,解决创建json代码臃肿的问题. 1.假设我们要创建一个json对象格式如下: { "code": 0, ...

  9. 利用redis+AOP简单处理MQ冥等问题

    思路: 1.利用redis内部的串行执行特性,使用getandset()处理分布式问题; 2.注解提供入参选择,通过数据抽取后计算MD5值,实现业务性值的冥等: 代码区: 1.注解 1 /** 2 * ...

  10. 【POJ2942】Knights of the Round Table(二分图 点双联通分量)

    题目链接 大意 给定\(N\)个点与\(M\)个关系,每个关系表示某两个点间没有直接的边相连,求不在所有奇环上的点的个数. (\(1\le N\le 1e3,1\le M\le 1e6\)) 思路 考 ...