vivo AI 计算平台的K8s填坑指南

标签: vivo ai 计算 | 发表时间:2020-10-24 11:46 | 作者:吴梓洋
出处:https://www.infoq.cn

背景

在2018年底,vivo AI 研究院为了解决统一的高性能训练环境、大规模的分布式训练、计算资源的高效利用调度等痛点,着手建设AI计算平台。白驹过隙,将近两年时间过去了,平台的建设和落地取得了很大的进展,成为了vivo AI领域的核心基础平台。平台现在已经有超过500多个用户,来自人工智能、影像、互联网等多个部门。平台的容器集群有1000多台服务器,拥有50000多CPU核,1000多张GPU卡,GPU算力将近100 PFLOPS。每天运行1000多个的算法训练任务,部署了100多个的模型推理服务和AI应用。这些训练任务和应用都是以容器的方式运行。平台从当初服务深度学习训练为主,到现在演进成包含VTraining、VServing、VContainer三大模块,对外提供模型训练、模型推理和容器化的能力。

计算平台的底座是VContainer,是基于Kubernetes构建的容器平台,对上提供了容器运行、资源调度等能力。Kubernetes是平台最基础最重要的组件,其稳定性对平台至关重要。本文是vivo AI计算平台技术演进系列文章之一,着重分享了平台在Kubernetes上遇到的疑难杂症和解决方法。

疑难杂症一:kmem accounting问题

平台的GPU机器在运行算法训练的时候,经常会出现机器Crash重启或者卡死的现象。CPU机器也会偶现此问题。通过排查,发现是臭名昭著的kmem accounting问题。这个问题在网上有很多资料,比如腾讯云的文章 《Cgroup泄漏–潜藏在你的集群中》和PingCap的文章 《诊断修复 TiDB Operator 在 K8s 测试中遇到的 Linux 内核问题》。这些资料提供了现象、根因的说明以及具体的修复方法,对我们修复问题提供很大的帮助,但现存的资料有以下问题:

  • 某些细节的信息有误。比如PingCap文章提到docker 18.09.1版本的runc已经将问题修复,但实际并没有。
  • 缺乏严谨的验证修复是否成功的方法。比如如何验证某个版本的runc修复了该问题。
  • 缺乏针对GPU机器的修复说明。
  • 该问题还会导致容器的内存指标虚高的问题。

本文针对上面的问题进行补充,希望给大家解决此问题带来帮助。

kubelet的编译选项

有些资料提到kubelet版本是v1.14及以上的,可以用编译选项BUILDTAGS=“nokmem"来关闭kmem accounting的特性。实际验证这个编译选项是无效的,正确的编译选项是GOFLAGS=”-tags=nokmem"。完整的编译命令是在k8s项目的根路径下执行:

相关 [vivo ai 计算] 推荐:

vivo AI 计算平台的K8s填坑指南

- - InfoQ - 促进软件开发领域知识与创新的传播
在2018年底,vivo AI 研究院为了解决统一的高性能训练环境、大规模的分布式训练、计算资源的高效利用调度等痛点,着手建设AI计算平台. 白驹过隙,将近两年时间过去了,平台的建设和落地取得了很大的进展,成为了vivo AI领域的核心基础平台. 平台现在已经有超过500多个用户,来自人工智能、影像、互联网等多个部门.

AI vs AI--当AI与自己聊天

- Tim - Solidot
Shawn the R0ck 写道 "最烦人的事情之一莫过于被强迫与一个白痴对话. 但当你发现你最讨厌与之交谈的白痴其实就是你自己的基于人工智能程序的拷贝...康奈尔创造性机器实验室决定看看当AI尝试跟自己交谈会发生什么. 他们的健谈的AI程序Cleverbot与自己进行文本交互,之后朗读出文本并且显示到视频中.

马化腾:云计算、AI和大数据,是腾讯愿意大力投入的三点

- - 钛媒体:网罗天下创新事
9月8日,腾讯董事会主席兼首席执行官马化腾在清华大学洞见论坛上发表演讲,谈及科技和商业的融合时表示,随着数字经济的发展,科技越来越融入到各行各业,在数字化和智能化的大浪潮里面,科技是我们所有产业界都必须要去关注的. 马化腾表示,有三点基础性的因素是腾讯正在大力投入的,分别是AI、云计算以及大数据. 他还强调,过去把用电量作为衡量一个工业社会发展的指标,未来,用云量也会成为衡量数字经济发展的重要指标.

腾讯杰出科学家写给2029的信:计算机视觉AI技术的爆点在哪里?

- -
在数不清的视觉AI应用中,我们认为未来技术的爆发点可能来自三个方面:信息的整合和提取、医疗和自动驾驶. 文 | 腾讯杰出科学家、腾讯优图实验室负责人 贾佳亚. 腾讯优图实验室总监 戴宇荣博士 郑冶枫博士. 本期杂志封面人物沈南鹏说过,投资人要思考十年后的情况. 不光是投资人,在迷雾重重、混沌不明的当下,市场中的每一个理性人都需要放长眼量,将锚抛在时间之河中较远的地方,以未来丈量现在,才能站立得更坚实安稳.

腾讯 AI Lab & Robotics X 主任张正友博士:计算机视觉的三生三世 | CCF-GAIR 2019

- - 雷锋网
雷锋网 AI 科技评论按:7 月 12 日-7 月 14 日,2019 第四届全球人工智能与机器人峰会(CCF-GAIR 2019)于深圳正式召开. 峰会由中国计算机学会(CCF)主办,雷锋网、香港中文大学(深圳)承办,深圳市人工智能与机器人研究院协办,得到了深圳市政府的大力指导,是国内人工智能和机器人学术界、工业界及投资界三大领域的顶级交流博览盛会,旨在打造国内人工智能领域极具实力的跨界交流合作平台.

步步高 vivo 智能机更多功能界面公布

- Johnny - Engadget 中国版
此文章网址 | 转寄此文章 | 回应.

步步高 vivo 智能机 V1 首张定妆照公布

- starry heavens - Engadget 中国版
终于看到真容了,步步高的智能手机 V1 定妆照亮相,这款机子以女性为主打对象,一些界面设计我们已经提前看到,可惜这次官方图依然没有公布具体的规格配置,从效果图可以看到后置了 500 万像素摄像头,带 LED 补光灯,后底部是一个 SRS 音效标识. 而第一款新品 V1 的工程机将在今天(9 月 26 日) 2011 北京国际通信展上亮相.

vivo 应用商店推荐系统探索与实践

- - 掘金 后端
介绍 vivo 应用商店推荐系统如何高效支撑个性化的推荐需求. 商店的应用数据主要来源于运营排期、CPD、游戏、算法等渠道,成立推荐项目之后也没有变化,发生变化的是由推荐系统负责和数据源进行对接,商店服务端只需要和应用推荐系统进行对接即可. 如果读者以为我们单纯是把商店服务端代码给照搬到推荐系统这边来了那就真的是too young too simple 了,不做优化或者升级直接copy一个系统是不可能的,这辈子都不可能.

事件驱动架构在 vivo 内容平台的实践

- - 掘金 架构
当下,随着微服务的兴起,容器化技术的发展,以及云原生、serverless 概念的普及,事件驱动再次引起业界的广泛关注. 所谓事件驱动的架构,也就是使用事件来实现跨多个服务的业务逻辑. 事件驱动架构是一种设计应用的软件架构和模型,可以最大程度减少耦合度,很好地扩展与适配不同类型的服务组件. 在这一架构里,当有重要事件发生时,比如更新业务数据,某个服务会发布事件,其它服务则订阅这些事件;当某一服务接收到事件就可以执行自己的业务流程,更新业务数据,同时发布新的事件触发下一步.

vivo数据库与存储平台的建设和探索

- - 掘金 架构
本文根据Xiao Bo老师在“ 2021 vivo开发者大会"现场演讲内容整理而成. 公众号回复**【2021VDC】**获取互联网技术分会场议题相关资料. 一、数据库与存储平台建设背景. 以史为鉴,可以知兴替,做技术亦是如此,在介绍平台之前,我们首先来一起回顾下vivo互联网业务近几年的发展历程.