論文の概要: FlashRNN: Optimizing Traditional RNNs on Modern Hardware
- arxiv url: http://arxiv.org/abs/2412.07752v2
- Date: Mon, 13 Jan 2025 17:34:22 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-14 14:27:59.159381
- Title: FlashRNN: Optimizing Traditional RNNs on Modern Hardware
- Title(参考訳): FlashRNN: 最新のハードウェア上での従来のRNNの最適化
- Authors: Korbinian Pöppel, Maximilian Beck, Sepp Hochreiter,
- Abstract要約: 状態追跡機能は、時系列タスクと論理的推論にとって重要である。
LSTMやGRUのような従来のRNNは、厳密にシーケンシャルな処理を犠牲にしてこれらの機能を備えている。
我々は、Tritonのハードウェア最適化FlashRNNとカーネルをレジスタレベルに最適化することで、これらのネットワークがどれだけ高速になるかを示す。
- 参考スコア(独自算出の注目度): 6.749483762719583
- License:
- Abstract: While Transformers and other sequence-parallelizable neural network architectures seem like the current state of the art in sequence modeling, they specifically lack state-tracking capabilities. These are important for time-series tasks and logical reasoning. Traditional RNNs like LSTMs and GRUs, as well as modern variants like sLSTM do have these capabilities at the cost of strictly sequential processing. While this is often seen as a strong limitation, we show how fast these networks can get with our hardware-optimization FlashRNN in Triton and CUDA, optimizing kernels to the register level on modern GPUs. We extend traditional RNNs with a parallelization variant that processes multiple RNNs of smaller hidden state in parallel, similar to the head-wise processing in Transformers. To enable flexibility on different GPU variants, we introduce a new optimization framework for hardware-internal cache sizes, memory and compute handling. It models the hardware in a setting using polyhedral-like constraints, including the notion of divisibility. This speeds up the solution process in our ConstrINT library for general integer constraint satisfaction problems (integer CSPs). We show that our kernels can achieve 50x speed-ups over a vanilla PyTorch implementation and allow 40x larger hidden sizes compared to our Triton implementation. Our open-source kernels and the optimization library are released here to boost research in the direction of state-tracking enabled RNNs and sequence modeling: \url{https://github.com/NX-AI/flashrnn}
- Abstract(参考訳): Transformerや他のシーケンス並列化可能なニューラルネットワークアーキテクチャは、シーケンスモデリングにおける現在の最先端のように見えるが、特に状態追跡機能は欠如している。
これらは時系列タスクと論理的推論にとって重要である。
LSTMやGRUのような従来のRNNや、sLSTMのような現代的な変種は、厳密なシーケンシャルな処理を犠牲にしてこれらの機能を備えている。
これはしばしば強い制限と見なされるが、これらのネットワークがTritonとCUDAのハードウェア最適化FlashRNNでどれだけ速くなり、カーネルを現代のGPUのレジスタレベルに最適化できるかを示す。
我々は従来のRNNを並列化の変種で拡張し、トランスフォーマーのヘッドワイド処理と同様、より小さな隠れ状態の複数のRNNを並列に処理する。
異なるGPU変種に対するフレキシビリティを実現するため,ハードウェア内部キャッシュサイズ,メモリ,計算処理のための新しい最適化フレームワークを導入する。
可視性の概念を含む多面体のような制約を使って、ハードウェアをセッティングする。
これにより、一般的な整数制約満足問題(整数CSP)に対するConstrINTライブラリのソリューションプロセスを高速化します。
我々のカーネルは、バニラPyTorch実装で50倍のスピードアップを実現でき、Triton実装に比べて40倍大きな隠れサイズを実現できることを示す。
我々のオープンソースカーネルと最適化ライブラリは、状態追跡可能なRNNとシーケンスモデリングの方向の研究を促進するために、ここでリリースされている。
関連論文リスト
- Were RNNs All We Needed? [55.822693848969855]
本研究では、リカレントニューラルネットワーク(RNN)に着目し、歴史的観点からのシーケンスモデリングを再考する。
これらのモデルを簡単にすることで、従来のモデルよりも少ないパラメータを使用する最小バージョン(minLSTMとminGRU)を導出でき、トレーニング中に完全に並列化可能であり、トランスフォーマーを含む最近のモデルに対抗して、様々なタスクにおいて驚くほど競争力のあるパフォーマンスを達成することができることを実証した。
論文 参考訳(メタデータ) (2024-10-02T03:06:49Z) - Attention as an RNN [66.5420926480473]
我々は,そのテキストマンディ・ツー・ワンのRNN出力を効率的に計算できる特別なリカレントニューラルネットワーク(RNN)として注目されることを示す。
本稿では,並列プレフィックススキャンアルゴリズムを用いて,注目のテキストマンディ・ツー・マニーRNN出力を効率よく計算する手法を提案する。
Aarensは、一般的な4つのシーケンシャルな問題設定に散らばる38ドルのデータセットで、Transformersに匹敵するパフォーマンスを実現している。
論文 参考訳(メタデータ) (2024-05-22T19:45:01Z) - Tensor Slicing and Optimization for Multicore NPUs [2.670309629218727]
本稿では,Slicing Optimization (TSO) と呼ばれるマルチコアNPUに対するコンパイラ最適化パスを提案する。
TSOは、一連のCNNモデルの実行時間を最小化する最高のテンソルスライシングを特定する。
その結果、TSOは一連のCNNモデルの実行時間を最小化する最適なテンソルスライシングを識別できることがわかった。
論文 参考訳(メタデータ) (2023-04-06T12:03:03Z) - Intelligence Processing Units Accelerate Neuromorphic Learning [52.952192990802345]
スパイキングニューラルネットワーク(SNN)は、エネルギー消費と遅延の観点から、桁違いに改善されている。
我々は、カスタムSNN PythonパッケージsnnTorchのIPU最適化リリースを提示する。
論文 参考訳(メタデータ) (2022-11-19T15:44:08Z) - Instant Neural Graphics Primitives with a Multiresolution Hash Encoding [67.33850633281803]
品質を犠牲にすることなく、より小さなネットワークを使用できる汎用的な新しい入力符号化を提案する。
小さなニューラルネットワークは、勾配降下によって値が最適化された訓練可能な特徴ベクトルの多分解能ハッシュテーブルによって拡張される。
数桁の高速化を実現し、高品質なニューラルネットワークプリミティブを数秒でトレーニングすることができる。
論文 参考訳(メタデータ) (2022-01-16T07:22:47Z) - Sub-bit Neural Networks: Learning to Compress and Accelerate Binary
Neural Networks [72.81092567651395]
Sub-bit Neural Networks (SNN) は、BNNの圧縮と高速化に適した新しいタイプのバイナリ量子化設計である。
SNNは、微細な畳み込みカーネル空間におけるバイナリ量子化を利用するカーネル対応最適化フレームワークで訓練されている。
ビジュアル認識ベンチマークの実験とFPGA上でのハードウェア展開は、SNNの大きな可能性を検証する。
論文 参考訳(メタデータ) (2021-10-18T11:30:29Z) - Fully Spiking Variational Autoencoder [66.58310094608002]
スパイキングニューラルネットワーク(SNN)は、超高速で超低エネルギー消費のニューロモルフィックデバイス上で動作することができる。
本研究では,SNNを用いた可変オートエンコーダ(VAE)を構築し,画像生成を実現する。
論文 参考訳(メタデータ) (2021-09-26T06:10:14Z) - Neural Architecture Search as Program Transformation Exploration [7.090165638014331]
コンパイラはハードウェア並列性とメモリ階層を利用するためにプログラム変換を適用する。
neural architecture search (nas)技術は、畳み込みのグルーピングやボトルネックのような操作によってネットワークを変異させる。
本研究では,表現能力の概念に依存するプログラム変換として,そのようなニューラルアーキテクチャの操作を表現する。
論文 参考訳(メタデータ) (2021-02-12T16:11:05Z) - Compiling Spiking Neural Networks to Neuromorphic Hardware [4.273223677453178]
スパイキングニューラルネットワーク(SNN)は、ニューロモルフィックハードウェア上で実行される機械学習アプリケーションのエネルギー消費を減少させる。
本稿では,資源制約のあるニューロモルフィックハードウェア上でSNNを分析し,コンパイルする手法を提案する。
論文 参考訳(メタデータ) (2020-04-07T21:13:27Z) - TFApprox: Towards a Fast Emulation of DNN Approximate Hardware
Accelerators on GPU [0.4817429789586127]
近似演算回路を導入することにより、ディープニューラルネットワーク(DNN)のハードウェアアクセラレータのエネルギー効率を向上させることができる。
DNNアクセラレータのソフトウェアエミュレーションは通常、CPUまたはGPU上で実行される。
このエミュレーションは通常、ソフトウェアDNN実装のエミュレーションよりも2~3桁遅い。
論文 参考訳(メタデータ) (2020-02-21T08:22:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。