論文の概要: DyCL: Dynamic Neural Network Compilation Via Program Rewriting and Graph
Optimization
- arxiv url: http://arxiv.org/abs/2307.04963v1
- Date: Tue, 11 Jul 2023 01:53:19 GMT
- ステータス: 処理完了
- システム内更新日: 2023-07-12 16:43:35.552381
- Title: DyCL: Dynamic Neural Network Compilation Via Program Rewriting and Graph
Optimization
- Title(参考訳): DyCL:動的ニューラルネットワークコンパイルによるプログラム書き換えとグラフ最適化
- Authors: Simin Chen, Shiyi Wei, Cong Liu, Wei Yang
- Abstract要約: Toolは、既存のDLコンパイラがDyNNをうまくコンパイルできる一般的なアプローチである。
ツールは、動的ニューラルネットワークを複数のサブニューラルネットワークに変換することで、DyNNの動的性質に取り組む。
ツールによって生成されたコンパイル可能な実行ファイルはパフォーマンスが大幅に向上し、汎用DLフレームワーク上で実行されるオリジナルのDyNNよりも1.12times$から20.21times$高速に動作する。
- 参考スコア(独自算出の注目度): 8.701484095864744
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: DL compiler's primary function is to translate DNN programs written in
high-level DL frameworks such as PyTorch and TensorFlow into portable
executables. These executables can then be flexibly executed by the deployed
host programs. However, existing DL compilers rely on a tracing mechanism,
which involves feeding a runtime input to a neural network program and tracing
the program execution paths to generate the computational graph necessary for
compilation. Unfortunately, this mechanism falls short when dealing with modern
dynamic neural networks (DyNNs) that possess varying computational graphs
depending on the inputs. Consequently, conventional DL compilers struggle to
accurately compile DyNNs into executable code. To address this limitation, we
propose \tool, a general approach that enables any existing DL compiler to
successfully compile DyNNs. \tool tackles the dynamic nature of DyNNs by
introducing a compilation mechanism that redistributes the control and data
flow of the original DNN programs during the compilation process. Specifically,
\tool develops program analysis and program transformation techniques to
convert a dynamic neural network into multiple sub-neural networks. Each
sub-neural network is devoid of conditional statements and is compiled
independently. Furthermore, \tool synthesizes a host module that models the
control flow of the DyNNs and facilitates the invocation of the sub-neural
networks. Our evaluation demonstrates the effectiveness of \tool, achieving a
100\% success rate in compiling all dynamic neural networks. Moreover, the
compiled executables generated by \tool exhibit significantly improved
performance, running between $1.12\times$ and $20.21\times$ faster than the
original DyNNs executed on general-purpose DL frameworks.
- Abstract(参考訳): DLコンパイラの主要な機能は、PyTorchやTensorFlowといった高レベルのDLフレームワークで記述されたDNNプログラムを、ポータブルな実行可能ファイルに変換することである。
これらの実行ファイルはデプロイされたホストプログラムによって柔軟に実行される。
しかし、既存のdlコンパイラは、ニューラルネットワークプログラムにランタイム入力を供給し、プログラムの実行パスをトレースし、コンパイルに必要な計算グラフを生成するトレースメカニズムに依存している。
残念なことに、このメカニズムは入力に応じて異なる計算グラフを持つ現代の動的ニューラルネットワーク(DyNN)を扱う際には不十分である。
そのため、従来のDLコンパイラはDyNNを正確に実行可能なコードにコンパイルするのに苦労している。
この制限に対処するため、既存のDLコンパイラがDyNNを正常にコンパイルできる一般的なアプローチである \tool を提案する。
コンパイルプロセス中にオリジナルのDNNプログラムの制御とデータフローを再配布するコンパイルメカニズムを導入することで、DyNNの動的な性質に取り組む。
具体的には、動的ニューラルネットワークを複数のサブニューラルネットワークに変換するプログラム解析とプログラム変換技術を開発する。
各サブニューラルネットワークは条件文がなく、独立してコンパイルされる。
さらに、 \toolはDyNNの制御フローをモデル化し、サブニューラルネットワークの呼び出しを容易にするホストモジュールを合成する。
本評価では,すべての動的ニューラルネットワークのコンパイルにおいて,100倍の成功率を達成した。
さらに、 \toolが生成したコンパイル実行ファイルはパフォーマンスが大幅に向上し、汎用DLフレームワーク上で実行されるオリジナルのDyNNよりも1.12\times$から20.21\times$が高速になった。
関連論文リスト
- Scaling Deep Learning Computation over the Inter-Core Connected Intelligence Processor with T10 [13.293273876476512]
AIチップ上でコア間通信帯域とオンチップメモリを利用する最初のDLコンパイラであるT10を提案する。
T10は、オンチップメモリ消費とコア間通信オーバーヘッドのトレードオフをグローバルに最適化する。
実際のコア間接続型AIチップであるGraphcore IPUによる評価は、最大3.3$times$パフォーマンス改善を示す。
論文 参考訳(メタデータ) (2024-08-09T01:28:09Z) - Boosting Neural Networks to Decompile Optimized Binaries [13.255618541522436]
Decompilation は低レベルプログラム言語 (LPL) を機能的に等価な高レベルプログラム言語 (HPL) に変換することを目的としている。
本稿では,コンパイラ最適化バイナリをターゲットとしたNeurDPという新しい学習手法を提案する。
論文 参考訳(メタデータ) (2023-01-03T06:45:54Z) - Intelligence Processing Units Accelerate Neuromorphic Learning [52.952192990802345]
スパイキングニューラルネットワーク(SNN)は、エネルギー消費と遅延の観点から、桁違いに改善されている。
我々は、カスタムSNN PythonパッケージsnnTorchのIPU最適化リリースを提示する。
論文 参考訳(メタデータ) (2022-11-19T15:44:08Z) - Decompiling x86 Deep Neural Network Executables [20.91585339813852]
BTD(Bin to DNN)は、ディープニューラルネットワーク(DNN)実行用のデコンパイラである。
BTDは, DNN実行環境に対して, 逆例生成と知識盗難の2つの代表的な攻撃を促進できることを示す。
論文 参考訳(メタデータ) (2022-10-03T16:48:18Z) - Dynamic Split Computing for Efficient Deep Edge Intelligence [78.4233915447056]
通信チャネルの状態に基づいて最適な分割位置を動的に選択する動的分割計算を導入する。
本研究では,データレートとサーバ負荷が時間とともに変化するエッジコンピューティング環境において,動的スプリットコンピューティングが高速な推論を実現することを示す。
論文 参考訳(メタデータ) (2022-05-23T12:35:18Z) - An Adaptive Device-Edge Co-Inference Framework Based on Soft
Actor-Critic [72.35307086274912]
高次元パラメータモデルと大規模数学的計算は、特にIoT(Internet of Things)デバイスにおける実行効率を制限する。
本稿では,ソフトポリシーの繰り返しによるエフェキシット点,エフェキシット点,エンフェキシット点を生成する離散的(SAC-d)のための新しい深層強化学習(DRL)-ソフトアクタ批判法を提案する。
レイテンシと精度を意識した報酬設計に基づいて、そのような計算は動的無線チャンネルや任意の処理のような複雑な環境によく適応でき、5G URLをサポートすることができる。
論文 参考訳(メタデータ) (2022-01-09T09:31:50Z) - Learning to Execute Programs with Instruction Pointer Attention Graph
Neural Networks [55.98291376393561]
グラフニューラルネットワーク(GNN)は、ソフトウェアエンジニアリングタスクを学習するための強力なツールとして登場した。
リカレントニューラルネットワーク(RNN)は、長いシーケンシャルな推論の連鎖に適しているが、プログラム構造を自然に組み込んでいるわけではない。
本稿では,新しいGNNアーキテクチャ,IPA-GNN(Instruction Pointer Attention Graph Neural Networks)を導入する。
論文 参考訳(メタデータ) (2020-10-23T19:12:30Z) - PolyDL: Polyhedral Optimizations for Creation of High Performance DL
primitives [55.79741270235602]
本稿では,Deep Learningプリミティブの高性能実装を自動的に生成するコンパイラアルゴリズムを提案する。
我々は多面体モデルを用いた新しいデータ再利用分析アルゴリズムを開発した。
また、このようなハイブリッドコンパイラとライブラリ使用の最小限のアプローチが、最先端のパフォーマンスをもたらすことを示す。
論文 参考訳(メタデータ) (2020-06-02T06:44:09Z) - PatDNN: Achieving Real-Time DNN Execution on Mobile Devices with
Pattern-based Weight Pruning [57.20262984116752]
粗粒構造の内部に新しい次元、きめ細かなプルーニングパターンを導入し、これまで知られていなかった設計空間の点を明らかにした。
きめ細かいプルーニングパターンによって高い精度が実現されているため、コンパイラを使ってハードウェア効率を向上し、保証することがユニークな洞察である。
論文 参考訳(メタデータ) (2020-01-01T04:52:07Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。