分布式系统
mlxaaa
这个作者很懒,什么都没留下…
展开
-
gpushare-scheduler-extender源码解析
阿里云在k8s中实现了在容器间对GPU的资源共享,具体实现为:aliyun/gpushare-scheduler-extenderaliyun/gpushare-device-pluginscheduler-extender与default scheduler的关联:在default scheduler的默认启动参数中添加参数--configextender-config.yaml中为extender-polilcy.json中包含了定义的extender详细拓展接口,扩产verb动词.原创 2020-08-20 15:58:14 · 1041 阅读 · 0 评论 -
没有人比我更懂集群调度器---之流行集群调度器综述
集群调度器的演进Firmament.io这片paper详细总结了目前调度的几大分类:a. 集中式调度器:代表k8s、Hadoop 、HPC 调度器。优势:调度器可以感知全局信息,因此可以基于此开发不同的调度算法来避免因为作业竞争而产生作业干扰。因为可以获取集群全局信息因此可以设计优先级抢占算法。劣势:1. 针对不同类型的作业都采用了同一种调度算法; 2.调度器对作业处理的顺序是一个问题,需要一个良好的作业优先级定义,否则可能产生队头阻塞与作业挤压的问题。b. 两级调度器:代表mesos。优原创 2020-08-11 00:10:40 · 765 阅读 · 0 评论 -
阿里巴巴2020年云原生编程赛赛道二(一)题目解读
阿里巴巴云原生编程赛2—实现规模化容器静态布局和动态迁移目前存在问题业界多数调度器均通过通过队列使用不同打分策略以one-by-one的方式调度容器,设计上并不感知后续待调度容器信息,串行扩容顺序会左右调度结果,进而极大地可能会导致资源的浪费。因此需要感知集群状态,并且进行容器迁移以减少资源的浪费与作业队列等待赛题描述应用建模应用信息实际以 “应用名、应用分组” 两个维度的形式呈现,同一个应用名下会有多个应用分组(appName:group=1:N)集团内部应用与应用、分组与分组之间有各种原创 2020-07-01 18:09:10 · 389 阅读 · 0 评论 -
2020-05-15-用于深度学习训练的分布式多租户GPU集群分析
Analysis of Large-Scale Multi-Tenant GPU Clusters for DNN Training Workloads作者提出分布式机器学习系统中出现的三个问题:作业调度GPU利用率训练中会产生的错误作业调度由于分布式机器学习中要求资源限制而使用gang调度算法,因此会产生资源碎片导致利用率不高。由于需要同步参数因此分布式作业locality非常重要,但也由于locality的调度限制也产生了排队延时。作者研究表明,通过放宽locality的限制可以减少原创 2020-07-01 14:29:02 · 853 阅读 · 0 评论 -
Horovod源码剖析(一)
Horovod源码剖析:核心模块 – operationshorovod/common/operations.h首先了解一下mpi常见的通信操作MPI-Scatter:scatter与broadcast类似都是一对多的通信,将一段array 的不同部分发送给所有的进程MPI-Boardcast:与scatter进行区分,broadcast是将0号进程将相同的信息发送给所有的进程;MPI-Gather:MPI_Gather和scatter刚好相反,他的作用是从所有的进程中将每个进程原创 2020-07-01 14:23:21 · 1008 阅读 · 0 评论