读者

这篇文章来自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. 根据SVG Arc求出其开始角、摆动角和椭圆圆心

    SVG Arc 目前Svg的Arc的参数字符串如下: a rx ry x-axis-rotation large-arc-flag sweep-flag x y 除了a表示标识为Arc之外,其余参数说 ...

  2. go get失败解决办法

    go get时由于防火墙的原因,会导致失败.目前可以通过修改GOPROXY的方法解决该问题. 无论是在win下还是linux,macos下,只需要将环境变量GOPROXY设置成https://gopr ...

  3. centos7 service iptables save 报错

    解决办法: 1.systemctl stop firewalld 2.yum install iptables-services 3.systemctl  restart iptables 4.ser ...

  4. 不难懂-------git版本回退

    1. git log 定义:该命令显示从最近到最远的提交日志.每一次提交都有对应的 commit id 和 commit message.   如果嫌弃输出的信息杂乱无章,那么加上 --pretty= ...

  5. json模块 os模块 文件加密

    目录 一:random随机模块 二:os模块 三:文件处理选择任意视频 四:sys模块 五:实现文件执行加密操作 六:json 序列化模块 七:json序列化 反序列化 八:json 文件写读方式 九 ...

  6. 什么是挂载?linux中挂载详解

    目录 一:什么是挂载,linux中挂载详解 一:什么是挂载,linux中挂载详解 1.linux中'一切皆文件',所有文件都放置在以根目录为树根的树形目录结构中.在linux看来,任何硬件设备也都是文 ...

  7. c#序列化感悟(重点讲讲二进制序列化)

    序列化是一种通过将对象转化为字节流,从而达到储存对象,或者将对象传输到内存,数据库或文件的一个过程,主要用途是保存对象的状态(包括对象的数据),方便对对象的重建,反之读取就是反序列化. 三种序列化类型 ...

  8. Java--这张线程瓜图保熟,不进来看看?这瓜要是不熟它就Dead掉了

    先来看一下线程这张图线程的几种运行状态之间运行流程: 看不懂没关系,慢慢来学习,往下学习来继续了解一下~ 什么是线程? 线程是进程的一部分,是程序执行中的一条执行路线: 进程就是指程序在其自身地址空间 ...

  9. iOS中处理时间的类

      登录|注册     sakulafly的专栏       目录视图 摘要视图 订阅 Markdown博文大赛清新开启    天天爱答题 一大波C币袭来    中国云计算大会演讲议题公布     大 ...

  10. 简述redis集群的实现原理

    在哨兵sentinel机制中,可以解决redis高可用问题,即当master故障后可以自动将slave提升为master,从而可以保证redis服务的正常使用,但是无法解决redis单机写入的瓶颈问题 ...