2024微软人工智能系统计算图的编译与优化_第1页
2024微软人工智能系统计算图的编译与优化_第2页
2024微软人工智能系统计算图的编译与优化_第3页
2024微软人工智能系统计算图的编译与优化_第4页
2024微软人工智能系统计算图的编译与优化_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 y+*bxy+*bxw算子表达式IR2.内存优化3.内核优化4.调度优化 AddLogWhileSubMatMulMergeMulConvBroadCastDivBatchNormReduceAddLogWhileSubMatMulMergeMulConvBroadCastDivBatchNormReduceReluLossMapTanhTransposeReshapeExpConcatenateSelectFloorSigmoid….. xwxw*b+yxwxw*b+y p1/(p0+(p3-p4)) PAGE12PAGE12Batchsame-typeoperatorsleverageGPUmassiveparallelism++×𝝈+M𝝈×𝒕𝒂𝒏𝒉+ +MMMMMRf Rzht-1xtData-flowgraphofaGRUcellWzWoWfht+×𝝈+M+×𝝈+M𝝈×𝒕𝒂𝒏𝒉+ +MMMMMRf Rzht-1xtWzWoWfht+×𝝈×𝝈+M𝒕𝒂𝒏𝒉Mht-1RWxthtData-flowgraphofaGRUcellPAGEPAGE14 1.计算图优化2内存优化3.内核优化4.调度优化PAGEPAGE19 PAGE21PAGE21AutoTM:AutomaticTensorMovementinHeterogeneousMemorySystemsusingIntegerLinearProgramming AutoTM:AutomaticTensorMovementinHeterogeneousMemorySystemsusingIntegerLinearProgrammingPAGEPAGE23 1.计算图优化2.内存优化3内核优化4.调度优化问题问题:每个后端平台针对每个算子都需要单独实现至少一个内核考虑:编程模型、数据排布、线程模型、缓存大小等等y+*bxw xw *xw*b+y张量运算表达式张量运算表达式C[i]=A[i]+B[i]361.计算图优化2.内存优化3.内核优化4调度优化y+*bxwy+*bxw算子表达式IRD[i]=max(C[i],0)C[i]=A[i]+B[i]

计算图优化XLA,TVM,nGraph计算图优化XLA,TVM,nGraphD[i]=max(A[i]+B[i],0)D[i]=max(A[i]+B[i],0)MatMulMatMul:C[i]=reduce_sum(A[m,i]*B[i,n])globalglobaladd_relu_kernel(args…){//..Code}voidlaunch_kernel(add_relu_kernel);算子生成AutoTVM,TC,Halide,Tiramisu,etcSMSMSMSMSMSMSMSMSMSMSM如何最终将每个算子的计算映射到硬件上?NNFusion:全局计算调度优化xw*b+yxw*b+y算子表达式IRTask-parallelGraph算子表达式IRBlockFusionOptimizerBlockFusionOptimizer 计算调度优化计算调度优化通过引出新的调度原语来支持任务级调度挑战:调度算子的任务到挑战:调度算子的任务到GPU上的挑战 错误依赖死锁

block7Conv

block8Conv

block9

block10

CannotschedulebarrierCo-scheduleto

Matmulblock0ConvMatmul

Matmulblock1ConvMatmul

Matmulblock2ConvMatmul

Matmulblock3ConvMatmul

Matmulblock4ConvMatmul

block5ConvMatmul

WaitforbarrierUnabletoexecuteGPUGPUSMSMSMSMSMSM依赖关系的映射依赖关系的映射 MatMulConvBE0BE1BE2BE3BE4BE5vblock6MatMulConvBE0BE1BE2BE3BE4BE5vblock6vblock5vblock5vblock4vblock10vblock4vblock7vblock0vblock8vblock1vblock6vblock0vblock7vblock1vblock2vblock3vblock8vblock2vblock9vblock3GPUGPUSMSMSMSMSMSM并行度的映射并行度的映射 [64,512][512,128][64,512][512,128]LowerLatencyUnderutilizationofGPUresourceBE0BE1BE2LowerLatencyUnderutilizationofGPUresourceBE0BE1BE2BE3BE4BE5vblock5vblock4 MatMul 𝜎Convvblock6vblock7vblo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论