AIGC 应用、数据分析等企业 10+ 热门专题课,就在极客时间企业版>>> 了解详情
写点什么

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

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

    阅读完需:约 10 分钟

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

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

近日,加州大学伯克利分校的 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:397010

评论

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

盘点 2020 | 10 天开发前台系统技术系列

老魚

CSS 大前端 全栈 js 盘点2020

面试必问的 Redis:主从复制

Java架构师迁哥

PostgreSQL 13 RPM中有哪些新功能?

PostgreSQLChina

数据库 postgresql 开源

字节二面跪拜“Redis源码”后,面试官直接推荐这份笔记!真是NB

比伯

Java 编程 架构 面试 程序人生

区块链溯源平台优势,区块链溯源系统解决方案

13530558032

为什么香港云服务器更适合放新网站

德胜网络-阳

一个企业用电有多浪费?90后开发者大显身手,让每度电从此更“聪明”!

华为云开发者联盟

AI 物联网 智慧园区

星域母子币系统软件开发|星域母子币APP开发

系统开发

如何基于 SDK 快速开发一款IoT App 控制智能灯(iOS 版)

IoT云工坊

ios App 物联网 IoT sdk

APICloud AVM 多端开发 |外卖 app 开发案例源码教程(上)

YonBuilder低代码开发平台

Vue 大前端 Web Worker 移动终端

抢先体验全新升级版Eternal Wallet!

Geek_c610c0

数字货币 数字货币钱包开发

高空立体云防控系统搭建,智能化平安小区建设方案

t13823115967

平安小区 智慧平安社区建设

限时!字节Java程序性能优化宝典开源,原来这才叫性能优化

996小迁

程序员 面试 性能优化 笔记

Demo分享丨看ModelArts与HiLens是如何让车自己跑起来的

华为云开发者联盟

人工智能 智能车 hilens

速来围观!阿里P8大牛写出的JDK源码剖析及大型网站技术架构与业务架构融合之道

Java架构之路

Java 程序员 架构 面试 编程语言

一线大厂开源三份JDK+Spring+Mybatis源码笔记

Java架构追梦

Java spring 源码 jdk mybatis

加密猫MIMI系统APP开发|加密猫MIMI软件开发

系统开发

Flash Player终将成为历史,HTML5正站在舞台的中央

葡萄城技术团队

2021 云原生走向何处?

云原生实验室

软件测试必须掌握的http网络协议知识

测试人生路

软件测试

云上可靠性测试:让我们一起给开发找点事儿

华为云开发者联盟

安全 云服务 可靠性

应急指挥中心平台搭建,移动可视化指挥解决方案

t13823115967

可视化数据分析搭建 应急指挥

如何通过 Serverless 轻松识别验证码?

Serverless Devs

人工智能 Serverless 云原生

智慧社区综合管理平台搭建,智慧平安城市建设

13530558032

用一把吃鸡的时间,免费上云搭建网站应用

华为云开发者联盟

服务 建站

移动生态盘点与HMS生态解析

华章IT

华为 Android Studio 移动开发 HMS

周立齐出任电动车联合创始人:网红经济背后的病态消费心理

石头IT视角

微服务架构思考 - 理清楚,管起来

jorden wang

为什么说rollup比webpack更适合打包库

fengxianqi

大前端 Rollup webpack

没能进入大数据领域

escray

面试 面经

扒开 SqlSession 的外衣

田维常

mybatis

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