字节跳动云原生

助力 AIGC 开发,火山引擎函数服务推出 Serverless GPU 功能

Image

火山引擎函数服务(Volcano Engine Function as a Service,veFaaS)推出 Serverless GPU,提供高度灵活、高效利用、按需分配的 GPU 计算资源,帮助用户解决 GPU 使用过程中经常出现的资源浪费、高成本、低弹性等问题。

来源 | 火山引擎云原生团队

体验 | www.volcengine.com/product/vefaas
在 Kubernetes、容器化技术和 Serverless 技术愈发成熟的今日,越来越多企业开始将业务应用迁移到云上,采用云原生架构支持业务高速稳定地发展。
当前,以 ChatGPT 为代表的 AIGC 浪潮席卷全球,对企业技术架构的弹性、容错性和开发便捷性等提出了全新挑战——以 GPU 算力资源为例,AI 计算任务同场需要固定消耗指定 GPU 资源,在使用过程中由于任务间的不均衡性,可能导致一些 GPU 资源一直处于空闲状态,承担不菲的未使用资源成本。

为解决上述问题,火山引擎函数服务 veFaaS 推出 Serverless GPU 功能,延续服务器无感知计算的理念,帮助企业实现 GPU 计算资源的弹性伸缩、按需分配,从而提供更便捷、高效的 GPU 计算服务。

veFaaS Serverless GPU

火山引擎函数服务 veFaaS 通过提供按需分配的弹性 GPU 实例,能有效解决长驻 GPU 实例导致的低资源利用率和高成本问题。用户无需提前规划 GPU 资源需求,也无需关心 GPU 资源使用率不均衡导致的 GPU 长时间处于空闲状态,只需为实际的 GPU 用量付费。

Image

  • GPU 实例:提供主流架构的 GPU 推理资源,满足业务在 AI、音视频、图形化等方面的加速需求

  • 公共镜像:预置主流 AIGC 公共镜像,支持 AIGC 热门场景,助力 AI 创业和生产力提升

  • 极致性能:快速冷启动性能结合资源弹性,纵享极致性能体验
GPU 实例

火山引擎函数服务 veFaaS 现已支持创建 GPU 函数。在函数配置过程中,用户只需选取业务所需的 GPU 算力和显存资源,系统即可自动分配内存和 CPU 资源。同时,veFaaS 也支持 CPU 与 GPU 的解耦,用户可按需独立配置不同资源函数。

此外,veFaaS 还内置 GPU 指标监控、日志存储、异步配置等功能,提供从运行、监控到运维的 GPU 函数全生命周期管理。

公共镜像

在 AI 场景下,为将 Kubernetes 强大的资源调度和管理功能用于 AI 模型开发,用户通常需要先把自己的模型打包为容器镜像,然后在容器中进行高效推理。如果要在函数服务上运行,用户还要对容器做一些修改,以适配 FaaS Native 运行时的要求并正确的处理 Trigger 请求。

veFaaS 针对上述场景推出公共镜像能力,提供包含 StableDiffusion 在内的主流 AIGC 镜像源。用户在部署函数之前无需进行额外的构建、打包等操作,即可基于公共镜像源快速部署和管理 AI 应用,实现上下游服务在云端快速联动,轻松沉淀最佳实践。

场景优化

目前,Serverless 技术落地的关键痛点之一就是冷启动,这一点在 AIGC 场景下也很突出。以文生图场景为例,过高的延迟会大幅增加用户等待图像生成的时间,进而降低用户体验。

为了保障短时间内准备和启动 GPU 计算资源,以支持用户在短时间内启动和停止大量的 GPU 计算任务,获得极致性价比,火山引擎函数服务 veFaaS 围绕以下场景做了优化:

资源弹性

当用户创建 GPU 实例函数时,函数服务 veFaaS 会负责为用户创建并管理 GPU 资源,创建成功后用户可以通过 veFaaS 提供的丰富触发器去执行推理任务,Autoscaler 会根据请求的流量进行按需的扩缩容。当没有请求时,Auotoscaler 会回收闲置的实例。

模型加载

对于一般模型,用户可以直接将模型文件集成在镜像中,veFaaS 支持自动为用户镜像创建镜像缓存以加速镜像拉取,加速整体链路。

对于较大的模型,用户可以通过上传对象存储 TOS,并远程挂载到容器中,这样也能起到加速的作用(存储相关能力函数服务正在陆续规划上线)。

冷启动

当用户 GPU 函数首次接收请求时,veFaaS 需要少量时间去实时拉起 GPU 实例,这个时间被称为冷启动时间。冷启动时间的长短主要取决于模型的大小、模型下载时间以及容器启动的时间。

veFaaS 以准实时场景为切入,通过对关键链路的优化,提供包含镜像加速等能力优化核心链路耗时,将冷启动性能从分钟级优化到秒级(预期 20-40s),同时提供日志和监控观测端到端耗时,为用户观测、优化冷启动链路提供有力帮助。

而针对实时场景,函数服务规划提供 GPU 预留实例。无函数运行时,veFaaS 将保留最小实例;当新的请求进来时,只需要供给算力资源,函数就能正常运行,免去了硬件资源拉起、函数镜像拉取和启动的时间,在保证实时能力的情况下,大幅提升了冷启动性能。

小结

此外,火山引擎函数服务 veFaaS 还提供丰富类型的触发器,用户的应用和服务可以通过 HTTP Endpoint 进行同步触发,也可以通过订阅 TOS 事件(或者其他事件源)进行异步触发,依托极致弹性资源和高性能服务链路,完成推理服务的闭环。

veFaaS 当前抽象了应用依赖的基础设施的管理,覆盖创建、开发、运维的全生命周期。后将持续优化系统链路和服务体验,由资源级托管逐步开放为应用级,沉淀多行业场景案例,帮助用户进一步聚焦业务场景,实现敏捷创新。

目前 veFaaS Serverless GPU 功能已正式邀测,欢迎广大企业用户试用体验:

Image

扫码咨询

- END -
火山引擎函数服务

火山引擎函数服务(Volcano Engine Function as a Service,veFaaS)是事件驱动的无服务器函数托管计算平台,用户只需编写代码并上传,函数服务将为用户屏蔽底层资源和运维细节,弹性高可靠地运行业务,完成开发、部署、运维一站式体验。

Image
Image

Image