范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

以AnimatedDrawingsAPP为例,用TorchServe进行模型调优

  内容导读
  上节介绍了 TorchServe 模型部署调优的 5 个步骤,本节以 Animated Drawings APP 为例,实际演示 TorchServe 的模型优化效果。
  本文首发自微信公众号:PyTorch 开发者社区
  去年,Meta 凭借 Animated Drawings 应用程序,用 AI 让儿童手工画「动」了起来,静态简笔画秒变动画~
  Animated Drawings 制作流程
  Animated Drawings 动态效果
  Demo 传送门:
  https://sketch.metademolab.com/
  这对于 AI 来说并不简单。AI 的设计初衷是为了处理真实世界中的图像,儿童绘画与真实图像相比,形态和风格迥异,更具有复杂性及不可预测性,因此先前的 AI 系统可能并不适用于处理 Animated Drawings 类似的任务。
  本文将以 Animated Drawings 为例,详细讲解如何借助 TorchServe,对即将部署到生产环境中的模型进行调优。
  4 大因素影响生产环境中的模型调优
  下面的工作流程展示用 TorchServe 在生产环境中进行模型部署的总体思路。
  用 TorchServe 为生产环境中的模型调优的基本流程
  大多数情况下,部署模型到生产环境中是基于吞吐量 (throughput) 或延迟 (latency) 服务级别协议 (SLA) 进行优化的。
  通常实时应用程序 (real-time application) 更关心延迟,而离线应用程序 (off-line application) 则更关心吞吐量。
  对于部署到生产环境中的模型,影响性能的因素众多,本文重点介绍 4 个:
  1. Model optimizations
  这是将模型部署到生产环境的前置步骤,包括量化、剪枝、使用 IR graphs(PyTorch 中的 TorchScript)、融合内核及其他众多技术。目前,TorchPrep 中提供很多类似技术作为 CLI 工具。
  更多关于 Torchprep 的相关简介,请访问:
  https://github.com/msaroufim/torchprep
  2. Batch inference
  它是指将多个 input 输入到一个模型中,在训练过程中会频繁用到,对于在推理阶段控制成本也很有帮助。
  硬件加速器对并行进行了优化,batching 有助于充分利用计算能力,这经常导致更高的吞吐量。推理的主要区别在于无需等待太久,就能从客户端获得一个 batch,也就是我们常说的动态批处理 (dynamic batching)。
  3. Numbers of Workers
  TorchServe 通过 worker 部署模型。TorchServe 中的 worker 属于 Python 进程,拥有用于推理的模型权重副本。worker 数量太少,无法从足够的并行性中受益;worker 数量太多,又会导致 worker contention 及端到端性能降低。
  4. Hardware
  根据模型、应用程序及延迟、吞吐量预算,从 TorchServe、CPU、GPU、AWS Inferentia 中选择一个合适的硬件。
  有些硬件配置是为了获取最好的 class 性能,有些是为了更符合预期的成本管控。实验表明,batch size 较大时更适合选用 GPU;batch size 较小或要求低延迟时,选用 CPU 和 AWS Inferentia 则更具备成本优势。
  Tips 分享:TorchServe 性能调优的注意事项
  开始之前, 我们先分享一些用 TorchServe 部署模型、获得最佳性能的 Tips。
  * 学习 PyTorch 官方教程:
  https://pytorch.org/tutorials/
  硬件选择与模型优化选择也是紧密联系的。
  * 模型部署的硬件选择,与延迟、吞吐量预期以及每次推理的成本密切相关。
  由于模型大小和应用的不同, CPU 的生产环境通常无法负担类似计算机视觉模型的部署, 大家可以注册使用 OpenBayes.com,注册即送 3 小时 RTX3090,每周还赠送 10 小时 RTX3090,满足一般的 GPU 需求。
  此外,最近添加到 TorchServe 中的 IPEX 等优化,使得这类模型的部署成本更低、更能被 CPU 负担。
  IPEX 优化模型部署详见:
  https://pytorch.org/tutorials/intermediate/torchserve_with_ipex.html
  *  TorchServe 中的 worker 属于 Python 进程, 可以提供并行, 应谨慎设定 worker 数量。 默认情况下 TorchServe 启动的 worker 数量等于主机上的 VCPU 或可用 GPU 数量,这可能会给 TorchServe 启动增加相当长的时间。
  TorchServe 公开了一个 config property 来设置 worker 的数量。为了让多个 worker 提供高效并行并避免它们竞争资源,建议在 CPU 和 GPU 上设置以下 baseline:
  CPU: 在 handler 中设置  torch.set _ num _ thread (1)  。然后将 workers 的数量设置成  num physical cores / 2 。但最好的线程配置可以通过利用 Intel CPU launcher script 来实现。
  GPU: 可用 GPU 的数量可以通过 config.properties 中的  number_gpus  进行设置。TorchServe 使用循环分配 worker 到 GPU。建议: Number of worker = (Number of available GPUs) / (Number of Unique Models) 。注意, pre-Ampere 的 GPU 不提供任何与 Multi Instance GPU 的资源隔离。
  *  Batch size 直接影响延迟和吞吐量。 为了更好地利用计算资源,需要增加 batch size。在延迟和吞吐量之间存在 tradeoff;较大的 batch size 可以提高吞吐量,但也会导致较高的延迟。
  TorchServe 中有两种设置 batch size 的方式, 一种是通过 config.properties 中 model config 进行,另一种使用 Management API 来 registering model。
  下节展示如何用 TorchServe 的 benchmark suite 来决定模型优化中硬件、worker 和 batch size 的最佳组合。
  认识 TorchServe Benchmark Suite
  要使用 TorchServe benchmark suite,首先需要一个 archived file,即上文提过的  .mar  文件。该文件包含模型、handler 和其他所有用来加载和运行推理的其他 artifacts。Animated Drawing APP 使用 Detectron2 的 Mask-rCNN 目标检测模型
  运行 benchmark suite
  TorchServe 中的 Automated benchmark suite 可以在不同 batch size 和 worker 设置下,对多个模型进行基准测试,并输出报告。
  了解 Automated benchmark suite:
  https://github.com/pytorch/serve/tree/master/benchmarks#auto-benchmarking-with-apache-bench
  开始运行: git clone https://github.com/pytorch/serve.git cd serve/benchmarks pip install -r requirements-ab.txt apt-get install apache2-utils
  在 yaml 文件中配置模型 level 设置: Model_name:     eager_mode:         benchmark_engine: "ab"         url: "Path to .mar file"         workers:             - 1             - 4         batch_delay: 100         batch_size:             - 1             - 2             - 4             - 8         requests: 10000         concurrency: 10         input: "Path to model input"         backend_profiling: False         exec_env: "local"         processors:             - "cpu"             - "gpus": "all"
  这个 yaml 文件将被  benchmark_config_template.yaml  引用。Yaml 文件中包括用于生成报告的其他设置,也可以用 AWS Cloud 查看 logs。 python benchmarks/auto_benchmark.py --input benchmark_config_template.yaml
  运行 benchmark,结果被保存在一个 csv 文件中,可以在  _/tmp/benchmark/ab_report.csv_  或完整报告  /tmp/ts_benchmark/report.md  中找到。
  结果包括 TorchServe 平均延迟、模型 P99 延迟 (model P99 latency)、吞吐量、并发 (concurrency)、请求数、handler time 及其他 metrics。
  重点跟踪以下影响模型调优的因素:并发、模型 P99 延迟、吞吐量 。
  这些数字要与 batch size、使用的设备、worker 数量以及是否做了模型优化结合起来看。
  这个模型的 latency SLA 已经设置为 100 ms,这是个实时应用程序,延迟是很重要的问题,在不违反 latency SLA 的情况下,吞吐量最好尽可能高。
  通过搜索空间,在不同的 batch size (1-32)、worker 数量 (1-16) 和设备 (CPU, GPU) 上运行一系列实验,总结出最好的实验结果,见下表:
  这个模型在 CPU 上的延迟、batch size、并发和 worker 数量等方面进行的所尝试,都没有到 SLA,实际上延迟降低了 13 倍。
  将模型部署移动到 GPU 上,可以立即将延迟从 305ms 降到 23.6ms。
  可以为模型做的最简单的优化之一,就是把它的精度降低到 fp16,一行代码  (model. half ())  ,可以减少 32% 的模型 P99 延迟 ,并增加几乎相同数量的吞吐量。
  模型优化方法还有将模型转化为 TorchScript 并使用  optimation_for_inference  或其他技巧(包括 onnx 或 tensort runtime optimizations)进行优化,这些优化利用了 aggressive fusions 。
  在 CPU 和 GPU 上,设置  number of workers=1  对于本文的 case 效果最好。
  * 将模型部署到 GPU,设置  number of workers = 1 ,  batch size = 1 ,吞吐量增加 12 倍相比于 CPU 上 降低 13 倍延迟。
  * 将模型部署到 GPU,设置  model.half() 、 number of workers = 1  、  batch size = 8 ,可以获得吞吐量和可承受的延迟方面的最佳结果。与 CPU 相比,吞吐量增加 25 倍,延迟仍然满足 SLA (94.4 ms)。
  注意: 如果正在运行 benchmark suite,请确保设置了适当的  batch_delay ,将并发性的请求设置为与 batch size 成比例的数字。这里的并发性是指发送到服务器的并发请求的数量。
  总结
  本文介绍了 TorchServe 在生产环境中调优模型的注意事项及性能优化方法 TorchServe benchmark suite,使用户对模型优化、硬件选择和总体成本的可能选择有了更深入的了解。
  推荐用户:
  获取 13 小时 RTX3090 算力资源:
  https://openbayes.com/
  查看「用 PyTorch 进行深度学习」在线教程:
  https://openbayes.com/docs/tutorial-jupyterlab-deep-learning-with-pytorch
  关注  PyTorch 开发者社区 公众号,获取更多 PyTorch 技术更新、最佳实践及相关资讯!

伤不起的新能源车保有量迈过千万辆关口补能费用低智能化免征购置税新能源车头顶光环蒙眼狂奔。然而,对于身处汽车产业转型链上的各车企及消费者来说,被定义为新物种的新能源车也不断颠覆和刷新着各种传统认知,林心如胖成大饼脸!穿礼裙配皇冠,虽发福明显满身却是优雅气质礼裙并不是越华丽就一定好看,有时候华丽过头了虽然吸睛,但是毫无美感,整个人看起来也十分庸俗,反而是设计色彩较为低调,但面料和细节都做的十分精致的礼裙,更能凸显一个人的高级气场,也更风衣烟管裤今年最时髦穿搭!优雅显瘦两不误,关键还特显气质小姐姐们已经发现了,这个秋天流行的趋势又发生了变化,看起来普通的风衣在今年又开始成为了潮人很关注的对象,尤其是风衣和烟管裤这样的搭配组合,早就已经是潮人都会选择的一套穿搭,你若是在气质女人怎么穿?照着这么穿,立马提升档次气质女人怎么穿?照着这么穿,立马提升档次,立秋之后,女孩们会给自己加一些衣服。在这个季节,保暖和时尚也很重要。我们需要穿时尚优雅的衣服。我们还需要买一些合适的衣服。我们需要用合适的穿衣如何不出错?越简单越高级,简洁的穿搭才最显气质如今时尚的演变越来越快,各种网红单品喷涌而出,但是这些单品真的适合你吗?留意近几年的时尚秀场,你会发现很少有太过浮夸的设计,精简的配色,利落的剪裁,为我们诠释了越简单越高级的真理。针织衫的穿衣范例温柔显气质!早秋穿既有风度又有温度服装的搭配会对女性的整体形象或者是气质有一些影响,如果在穿衣方面不够熟练,不够精通,不妨看看下面这些针织衫的穿衣范例,温柔又显气质。一柔软的开衫突出温柔美开衫始终是入秋之后大家会优旗袍2022年新款改良女夏季小清新年轻款气质高端小个子少女风绿色一,旗袍,又称褀袍,中国和世界华人女性的传统服装,被誉为中国国粹和女性国服。二,旗袍形成于上个世纪20年代,有部分学者认为其源头可以追溯到先秦两汉时代的深衣,虽然其定义和产生的时间华为任正非说将让寒气传递到每个人,互联网寒冬程序员如何破冰前言连阿里腾讯百度字节跳动京东美团等等互联网巨头也都在互联网寒冬的漩涡当中,都在大肆裁员,疯狂砍边缘业务,往社会大量输送人才!!而公司裁掉的员工,一定是那些技术沉旧,不适应新技术发AITO问界M7正式交付大好开还有HarmonyOS智能座舱从7月份AITO问界M7亮相华为夏季发布会,这款中大型SUV就自带光环。事实也的确如此,根据官方数据AITO问界M7预售4小时订单量就已经突破2万台,这其中离不开小康与华为的强强联回港二次上市,涂鸦智能能把握好智能化红利吗?深度盘点随着物联网智能设备在日常生活中的普及,涂鸦智能作为唯一一家在美国上市的物联网平台公司,开始受到市场的关注。然而涂鸦智能在美股的表现却不尽如人意。2021年,全球物联网云平台第一股涂给豪华新能源MPV打个样,腾势D9正式上市8月23日,腾势品牌首款高端MPVD9正式上市。新车包括DMi超级混动版纯电版两个动力版本,其中DMi超级混动版共推出四款车型,售价区间为32。98万43。98万元,纯电版售价区间西部数据新品日,让你的游戏不再无处可放大家在使用电脑和次世代主机时,面对动辄上百G数据的3A游戏,原配512G的硬盘往往有心无力。同时,出厂自带的512G硬盘其缓存大小是远远不如1T2T的硬盘的,导致其读写速度相对更低25寸240Hz和27寸165Hz显示器,HyperX推出新的游戏显示器HyperX一直为各种平台提供高质量的耳机和游戏外设,该公司设计人员在2022年科隆国际游戏展期间宣布推出两台新显示器,旨在成为功能强大的显示器,几乎没有输入延迟。HyperXArRNG选手终于知道急了,小虎gala纷纷练英雄,提前准备世界赛?引子RNG输比赛之后,选手的英雄池受到了诟病。到了夏天,RNG队员xiaohuming的确不如春季赛那么猛。先是常规赛输给LGD,错失复活甲,再就是季后赛输给了EDG,告别四强。这神兽归笼,宝妈们注意啦各位宝妈们,请珍惜最后几天可以睡懒觉的日子吧哈哈等待神兽归笼,之后早上就要早起最早餐啦,想想就觉得难受我为了多睡一会,在网上搜寻了好多快速做早餐的教程,最终发现了这款懒人早餐!看着飞友沙水王国嬉沙沙产品介绍沙水王国游戏产品嬉沙沙玩沙Playwithsand应用场景幼儿园玩沙区户外场地产品价值自主探索进阶产品特点自由组装产品功能筛沙天平沙漏丢沙包产品材质桦木多层板教育部最新颁布的幼儿园海南周刊寻古江岸渡口文本刊特约撰稿何以端南渡江下游是海南最早的农耕核心区,也是绝大多数时间段全岛政治中心所在地。分布于这一区域的众多渡口,给南渡江两岸居民的出行带来便利,有些还起到了沟通岛内外的作用。空中花园那拉提草原如果说唐布拉百里画廊是独库公路上的幽谷秘境的话,那么那拉提则就是这条最美公路上的立体画卷。世界的每一角落,都有一个美丽的地方,而每一个美丽的地方,都有一个美丽神奇的传说。相传成吉思中国准空天飞机还在太空!美国最近变轨了,机动能力卓越中国绝密航天器还在太空!美国变轨了,机动能力卓越在8月中旬的时候,荷兰博士DrMarcoLangbroek发现我国绝密航天器即将越过我国大西北上空,于是对我国绝密航天器进行了预测8可戴上眼镜沉浸式操控大疆发布无人机DJIAvata8月26日消息,大疆新款人机合一无人机DJIAvata正式发布,与以往航拍无人机操作方式不同,无人机DJIAvata主打沉浸式飞行体验,用户只需佩戴DJIGoggles2眼镜就可以3499元起大疆Avata无人机正式发布这次沉浸感拉满8月25日晚,大疆举行新品发布会,带来了大疆DJIAvata无人机。这款无人机单机售价3499元智选套装带头显和遥控版本为6998元进阶套装售价8498元,其中包含Avata无人机科普FPV无人机有哪几种规格?不同于常规的航拍无人机,FPV绝对是一个小众品类,更自由更刺激,但也入门门槛更高。最近FPV第一视角无人机又即将出现新品,趁着这个热度,我们来和大家科普一下FPV自组无人机都有哪些
朱元璋之墓明孝陵之谜朱元璋之墓明孝陵之谜明孝陵是朱元璋与马皇后的合葬陵寝,位于南京市东郊钟山独龙阜玩珠峰下。孝陵于洪武九年(公元1376年)开始筹建洪武十四年(公元1381年)初步建成第二年地宫工程竣桐城变迁来源人民网人民日报人民日报(2022年08月08日第20版)桐城城市风光。吴菲摄我的老家在安徽桐城的乡村,现在属于嬉子湖镇。从我们村到桐城城关有大概三十里路。我小的时候,有一辆往返实拍广州市白云区大源村,全国首个百亿淘宝村,你来过吗?这里是刘小顺的旅行和生活研究所。前段时间,我来到了广州市白云区的大源村,这里据说是全国首个百亿淘宝村。大源村位于广州市白云区太和镇的东南部,原本是个平平无奇的小村子,如今却摇身一变学会这几招!不怕小孩长不高一个人的身高跟遗传因素密切相关,但后天因素也同样重要,今天我来给大家分享一下如何科学增高。1,适当运动多进行跳高,跳绳,打篮球这类的运动,弹跳能促进生长激素的分泌,尤其能刺激骨骼的一杯茶的时间,带你看不一样的云南No。1滇云南简称滇,滇原本是古代西南夷地区滇池畔的部族名称。云南作为地名的称呼有两种说法。其一,云南通志记载汉武帝元狩间,彩云现于南中,遗史迹之,云南之名始此。其二,新纂辞海注旧戴安娜下葬前一夜发生奇怪的事情,25年了这些流言依旧流传至今原本人们以为当戴安娜离开这个世界时,一切的纷争都会随着她的离开而消逝,但是让人们没想到的是,她的离开并没有让这个世界清净,反而让舆情的持续发酵。25年了围绕戴安娜那些流言依旧没有停贵阳白宫,造价27亿的私人住宅,成为贵阳新地标,游客都来打卡提到贵阳新地标,花果园湿地公园的白宫,一定是来到这里必打卡的景点。这座白宫坐落于全国最大的棚户改造楼盘贵阳花果园。因为其欧式建筑风情,通体以白色为主色调,华丽精致,被冠以白宫的美誉记者带你逛公园玛多,正午的云朵鹰巢和笑脸黄河源区红星新闻记者丨王震华责编任志江编辑丨郭宇云朵越来越低,车辆越来越少。6月的高原,空气稀薄,日光灼人。从西宁驱车五个多小时,遭遇一场急雨后,天边渐红,凉意陡增,我们正在靠近傍一趟青甘大环线,满足了我对旅行的所有向往朋友们大家好哇,这里是做梦都想去大西北的栗子酱。前两天在小号上给大家介绍了西宁逛吃攻略,详细可戳明明好吃又好玩,求求别再把它当作旅行中转站啦!后台小伙伴纷纷让我出后续的西北自驾攻略这个人文旅行秘境,只有去0次和无数次朋友们,前几天给大家安利了黔东南丹寨的玩法,今天我要把玩耍版图拉大,给大家好好讲讲黔东南了。在贵州这个用美丽和丰饶来回答一切的地方,要论人文与风光兼顾,那也必须得是黔东南。提到黔东假如有一天可以自由旅行了,推荐你去这8个地方,再忙也要去看看逝者如斯夫,不舍昼夜。困扰大家的疫情已近三年,每个人都在坚持,因为大家都相信,一切终将过去,山河应无恙。假如有一天,可以自由旅行了,我推荐你去这8个地方,一样的地方,别样的心情,总