《如何快速搭建全 GPU 加速的 AI 应用.pdf》由会员分享,可在线阅读,更多相关《如何快速搭建全 GPU 加速的 AI 应用.pdf(19页珍藏版)》请在三个皮匠报告上搜索。
1、MachineIntelligenceOf DamoGPU加速的AI应用如何快速搭建全在GPU上搭建复杂AI应用的最佳实践青神阿里巴巴达摩院一机器智能技术MD#page#01AI应用服务趋势和挑战Contents02全GPUAI应用服务举例目录03Hummingbird框架介绍#page#01一级标题AI应用服务趋势和挑战#page#超势AI应用服务趋势和挑战119硬件多样化编程语言多模型多模态复杂计算图异构硬件发展迅速,各种加速单元Python社区视频能解码Python训练快速实现多个模型配合完成一个任务C+推理在线离线视频图片,音频,NLP等多领域预处理(Resize,CSC)配合Nvid
2、iaXavier(DLA等)其他硬件加速器Mit#page#挑战AI应用服务趋势和挑战硬件利用效率低多模型组织与并行O11GPU使用率无法达到100%单个模型无法完成复杂任务0-0单Batch推理+多进程实现压满GPU而不是多Batch推理多模型配合整体延时高无法完成实时性应用存在大量CPUGPU内存烤贝,速度低性能分析困难开发效率和开发者找到应用和系统瓶颈困难训练G线上性能准以追踪-100%Python推理-Python:性能低,并行度(GIL)低开发效率高-C+:性能高,并行度高,开发难度高大量Python开发者,C+开发者较少MiD#page#全GPUAI应用服务举例实时视频处理不止推理
3、#page#流程图常见实时视频处理应用流程跟踪数据源视频解码一级模型二级模型三级模型其他业务模块行人属性行人特征抽取后处理行人机动车跟踪业务相关内容预处理招图视频(流)解码检测模型预处理车牌识别车牌检测模型推理后处理预处理常见问题编解码问题3:预处理成为性能瓶颈问题2:HostDevice传输速度低问题1:多模型下实时性难保证使用CPU进行预处理,比如大量CPU和GPU之间的数据搬加入跟踪需要10FPS的速度,只Resize等成为瓶颈运,PCI-E带宽不够,传输数据低有100ms的时间给解码到跟踪之间的处理问题4:性能分析困难问题6:视频解码成为瓶颈问题5:多模型并行推理性能低CPU解码会占用
4、太多的CPU资源多模型并行,性嫩瓶颈分析困难多个模型并行推理,速度下降严解码速度不够造成推理模块等待时间Log无法找到真正原因重#page#Tracker之间延时实时性同步执行流水线问题1:多模型下实时性难保证H264解码H264解码实时跟踪Tracker之间延时检测预处理检测预处理检测模型延时来自两次调用Tracker的时间间隔检测模型行人截图预处理例如10FPS意味着100ms延时行人截图预处理Feature提取模型顺序执行:所有相加小于100msFeature提取模型Tracker更新流水线:两个模块之间小于100msTracker更新H264解码时间(100ms)检测预处理流水线检测模
5、型参考CPU多级流水线设计,CPU多线程并行行人截图预处理-GPU计算。Reactive架构:节点之间message发送Feature提取模型CPU计算可以灵活增加更多的处理节点Tracker更新一视频解码DAG逻辑上并行处理节点可以进一步升级成DAGMi#page#传输问题2:HostDevice传输速度低实际应用中的NsigntSystems截图Profile到带宽测试机PCI-E带宽最差情况7.2GB13GB0.027GBmemcpyDt.Me.Begins:105.117sBogins:45.71468Ends:105.118s(+858.617us)Ends:45.94255DtoH
6、memcpy6,220,800bytesSource memory kind:Dein细:DPageablekimDestination memorykincPagcableThroughput:27.3021MiThroughput:7.24514GitonID:344524CorrelCorrelation ID:985048Host:Pageable内存MiD#page#Pinned Data TransferPageable Data Transfer传输问题2:HostDevice传输速度低(2)DRAMDRAMPinned MemoryPageable Memory Vs Pinn