NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

想彻底改变云行业!Spark 发源地 UC 伯克利分校再推开源项目应对云成本飙升:平均降至三分之一

  • 2022-12-14
    北京
  • 本文字数:2994 字

    阅读完需:约 10 分钟

想彻底改变云行业!Spark发源地UC伯克利分校再推开源项目应对云成本飙升:平均降至三分之一

近日,加州大学伯克利分校的 Sky Computing 实验室发布了开源框架 SkyPilot,这套框架能够在任何云环境上无缝、且经济高效地运行机器学习与数据科学批量作业,适用于多云和单云用户。SkyPilot 的目标是大大降低云使用门槛、控制运行成本,而且全程无需任何云基础设施专业知识。


SkyPilot GitHub 地址:

https://github.com/skypilot-org/skypilot


据悉,Sky Computing 实验室研发了一年多的时间,SkyPilot 现在已经被 10 多家组织用于多种不同的场景,包括:GPU/TPU 模型训练(将成本降低至三分之一)、分布式超参数调优及百余个 CPU 竞价实例上的生物信息学批量作业 (循环运行成本降低至 1/6.5)等。

将云成本平均降至三分之一?


根据官方介绍,只要给定一项作业及其资源需求(CPU/GPU/TPU),SkyPilot 就能自动找出哪些位置(区 / 区域 / 云)具备运行该作业的计算资源,之后将负载发送至成本最低的位置执行。



SkyPilot 自动在云端执行各项作业,主要包括:


  • 以高可靠方式交付集群,如果发生容量或配额错误,则自动故障转移至其他位置。

  • 将用户代码及文件(从本地或云存储桶)同步至集群。

  • 管理作业排队和执行。


根据官方数据,SkyPilot 能帮助用户大幅减少云成本,一般均可降至三分之一左右:


  • 自动寻找能够提供所需资源的最便宜区 / 区域 / 云(将成本降低至二分之一);

  • Managed Spot 功能通过使用竞价实例将成本降低至三分之一到六分之一,并可在发生资源抢占时自动恢复;

  • Autostop 可自动清理空闲集群,化解这一造成云超支的最大“凶手”。


过去几个月来,该实验室逐渐将 SkyPilot 交付给 10 多个组织的数十位机器学习 / 数据科学从业者和研究人员手中。SkyPilot 已被广泛用于交互式开发(例如运行 Jupyter 的 CPU 服务器)、管理各类项目(跨多云环境),甚至扩展至数百项作业。



比如,伯克利 AI 研究所(BAIR)和斯坦福大学的领先机器学习团队,一直在使用 SkyPilot 在云端运行机器学习训练。他们通常会在不更改代码的情况下启动自己的现有机器学习项目,而 SkypIlot 可以配置 GPU 实例、打理集群上的作业排队,并同时运行上百个超参数试验。此外,对于运行在 AWS 上的作业,用户只需要修改一个参数即可将其转由 Google Cloud Platform/Azure 运行。

作为“云际经纪人”的角色


SkyPilot 开发者和博士后研究员 Zongheng Yang 介绍道,构建 SkyPilot 的初衷就是为了契合多云和多区域的发展趋势。他指出,组织越来越倾向于使用多云环境,借此获得更高可靠性、避免云服务商锁定、掌握更强的谈判杠杆等。


Zongheng 对多云带来的成本优势进行了解释。他表示,在硬件相同 / 相似的前提下,选择价格最优的云服务能够节约大量成本。


以 GPU 为例,截至 11 月份时,Azure 的英伟达 A100 GPU 实例价格最低,GCP 和 AWS 分别要比其高出 8% 和 20%。CPU 同样存在价格差异:对于最新的通用实例(配备同样的 vCPU 和内存),不同云服务商的定价差异可能超过 50%。因此,为某项任务选择最合适的云厂商和相应硬件,无疑能显著降低成本、提高性能。



不同硬件的云价格差异,取各家云平台最低价区域内的按需实例价格


用过的开发者可能知道,AWS EC2 instance 的时候经常出现 Insufficient Capacity 错误,即 AWS 这个区没有用户需要的资源了。实际上,优质的云实例资源非常稀缺,搭载英伟达 V100 和 A100 等高端 GPU 的按需实例并不常有,更不要说附带 GPU 或强劲 CPU 的竞价实例。根据经验,用户往往需要等待几十甚至上百小时才能获取如此宝贵的资源。


为了提高获取此类资源的机会,靠谱的办法就是使用多云。假设每家云厂商有 40% 的概率可以提供优质资源,则使用 3 家云服务商就会把成功概率提升至 78%(1–0.6³)。


当然,这些对于跨多个区域的单云用户也同样适用。


首先,不同区 / 区域间的价格差异也很大。对于普通的 GPU/CPU 资源,跨区按需实例的价差可能高达 20%。对于竞价实例,价差更是轻松达到 3 倍。简单来讲,用户可以在同一云服务商的多个区 / 区域间进行选择以降低设施成本。



云内价格差异,“+20%”代表最贵区域的收费比最便宜区域高出 20%


其次,硬件 / 服务产品因云区域而异。例如,GCP 在全球部署有 35 个区域,但 TPU V3 只登陆了其中 2 个区域。另外,跨多个区域时,获取稀缺资源的成功率也更高。


但是不管有多少好处,跨云 / 区域运营确实会极大提升基础设施的管理复杂性。加州大学 AMPLab、RISELab 和现在的 Sky Computing Lab 团队在使用公有云运行机器学习、数据科学、系统、数据库和安全方面的项目时就体会到了。


“使用一个云已经够难了,使用多云会加重最终用户的操作负担,SkyPilot 的开发人员就是想要减轻这种负担。”Zongheng 说道。

“Sky Computing”构想


“今天,越来越多的计算和数据正在进入云端。”Databricks 联合创始人、领导 Sky Computing Lab 的伯克利计算机科学教授 Ion Stoica 说道:“没有回头路可走。”


Stoica 还是 AMPLab 共同创始人、Spark 的核心设计者。他在去年提出了“Sky Computing”构想,这一构想的实质就是想让开发人员构建多云应用程序像构建在单个云上运行的应用程序一样容易。



Sky Computing 与互联网对比


Sky Computing 构想的底层是云兼容层,通过抽象出云计算服务,使在该层之上开发的应用程序无需更改即可在不同的云上运行。兼容层可以从当前很多 OSS 解决方案中构建出来,如操作系统 Linux,集群资源管理器 Kubernetes、Mesos,数据库 MySQL、Postgres,⼤数据执⾏引擎 Spark、Hadoop,机器学习库 PyTorch 、Ten sorflow,通⽤分布式框架 Ray、Erlang 等等。


云兼容层之上云间层,用户可以指定有关其作业应在何处运行的策略。云间层之上是对等层,旨在让云间可以通过建立高速连接互相传递数据,使数据传输又快又便宜,实现更大的工作流动自由。


Sky Computing Lab 的成立就是要建立一个以服务为中介的双向市场,为用户识别和使用最适合他们需求的多云组合。云计算领域的一些知名企业,如谷歌、IBM、英特尔、三星 SDS 和 VMware 都是该实验室的创始赞助商。该实验室的团队包括 60 多名伯克利教职员工和学生。



为彻底改变云行业,加州大学伯克利分校启动 Sky Computing Lab


作为该实验室的产品,SkyPilot 就是 Sky Computing 构想下的产品之一。目前,已经有企业在 SkyPilot 的编程化 API 上构建多云库,这些应用程序从设计之初就具备了跨云能力,可以通过云中立接口驰骋在不同云环境之间。另外,Stoica 参与研发的项目 Skyplane 可以以 10 Gbps 的速度在云 / 区域之间迁移大型数据集,同时压缩数据来降低费用。

结束语


“我已经在 ML 项目中使用 SkyPilot 3 个月了,它确实和听起来一样棒。启动和管理计算的整体体验是经过深思熟虑且符合人体工程学的。”开发者“donnygreenberg”说道。


但并不是所有人叫好,除了对产品本身的质疑外,还有很多人因云成本负担而对云本身失去信心。“有时,人们会发现,先租赁设备直到可以低价购买,并以传统方式托管通常比支付无休止的云费用要便宜得多。”开发者“walrus01”表示。还有人直呼被当时云“降低成本”的炒作迷住了,云实际上并不适合所有企业。


一方面,业内在努力解决各种问题。另一方面,如何消除人们现在的怀疑,也是云提供商需要思考的问题。


参考链接:


https://medium.com/@zongheng_yang/skypilot-ml-and-data-science-on-any-cloud-with-massive-cost-savings-244189cc7c0f

https://www.infoq.cn/article/WIm2YhkS1I3z6Zds8tcq

https://news.ycombinator.com/item?id=33964285


2022-12-14 15:396973

评论

发布
暂无评论
发现更多内容

Python代码阅读(第10篇):随机打乱列表元素

Felix

Python 编程 Code Programing 阅读代码

手势事件采集究竟有多难?

神策技术社区

ios 手势

学习笔记: JPA与Hibernate

yhrivory

数据库 hibernate jpa ORM spring data

云原生-工作流引擎Zeebe

QiLab

云原生 k8s cncf BPM zeebe

如何在FL Studio中对整首歌曲音量进行调整

懒得勤快

数据同步系统重构实践

Qunar技术沙龙

数据库 ES canal 数据同步 Kafk

事事请示是不靠谱的表现

boshi

团队管理

一群人的战斗

神策技术社区

编程 代码

vue入门:简单指令介绍

小鲍侃java

8月日更

Linux云计算-使用 MyCat 实现 MySQL 主从读写分离

学神来啦

MySQL 数据库 Linux 运维

漏洞挖掘的快乐你想象不到

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

深耕基础软件,华为开源加速“新全球化

科技热闻

DAPP智能合约搭建|DAPP波场智能合约开发

量化系统19942438797

智能合约 dapp

面向对象的原则是普遍适用么?

escray

学习 极客时间 如何落地业务建模 8月日更

借助云网融合优势,某省运营商打造下一个十年增长引擎

BoCloud博云

云管理

架构实战营 毕业总结

Dylan

架构实战营

一个小而美的 Swift 框架:Then

fuyoufang

swift iOS Developer 8月日更

【音视频】弱网下实时视频的极限通信

声网

音视频 视频处理 视频压缩

架构实战营 - 模块五作业

李东旭

「架构实战营」

区块链交易所搭建,币币交易系统搭建

从小白程序员到大厂高级技术专家我看过哪些书籍?

冰河

学习 程序员 面试 程序人生

MySQL 字段NOT NULL

一个大红包

8月日更

JAVA对于文件IO操作的支持

卢卡多多

Java 文件 io 8月日更

智能时代的信任口诀:让计算远离算计

脑极体

你的日志打印对了么?

神策技术社区

数据分析 日志

交易所市值管理机器人开发

Geek_23f0c3

去中心化交易所系统开发 市值管理机器人系统开发 做市机器人 去中心化市值管理机器人

超级人脉:让巴菲特老爷子告诉你圈子的重要性

非著名程序员

人脉 认知提升 思维 8月日更

数据上报方式是否存在最优解?

神策技术社区

编程 数据

运用上游思维的七个思路

石云升

读书笔记 8月日更 上游思维

你的登录接口真的安全吗?快看看你有没有中招!

xcbeyond

安全性 8月日更

想彻底改变云行业!Spark发源地UC伯克利分校再推开源项目应对云成本飙升:平均降至三分之一_开源_褚杏娟_InfoQ精选文章