egolearner / paper-note

7 stars 2 forks source link

Accelerating Large Scale Deep Learning Inference through DeepCPU at Microsoft #5

Open egolearner opened 5 years ago

egolearner commented 5 years ago

https://www.usenix.org/conference/opml19/presentation/zhang-minjia

介绍

大规模DL预测的三大挑战

为此论文提出了SLT(Scenario, library, technique)的方法论。

SLT

Scenario 介绍主要的DL场景,如Deep feature, Web Q&A, Similarity ranking, Query rewriting, Query tagging

Library 对上面的场景分析,涉及的DL组件可以分为三类

因此以上面的组件作为基础单元实现了DeepCPU,并包含定制优化。论文发现这些组件高度可复用,允许快速实现和低成本的支持新场景。

Techniques

DeepCPU使用

定制优化 使用DeepCPU库重新实现模型运行时,然后对线程设置等进行调优以达到最优性能。 优缺点:需要和模型开发者沟通,模型剧烈变化时有开发成本。

框架集成 把TF的运行时中常用和耗时的OP替换为DeepCPU的高性能实现。此外还和ONNX团队合作使用DeepCPU技术来赋能ONNX运行时。 优缺点:以框架用户为目标,只需要少量工作就能利用DeepCPU。

对于新的场景,优先采用框架集成的方式。

评估

使用DeepCPU实现5-20倍的耗时提升,同时最高实现100倍的呑吐提升。