論文の概要: eXmY: A Data Type and Technique for Arbitrary Bit Precision Quantization
- arxiv url: http://arxiv.org/abs/2405.13938v1
- Date: Wed, 22 May 2024 19:11:28 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-24 20:33:38.380583
- Title: eXmY: A Data Type and Technique for Arbitrary Bit Precision Quantization
- Title(参考訳): eXmY: 任意ビット精度量子化のためのデータ型と技術
- Authors: Aditya Agrawal, Matthew Hedlund, Blake Hechtman,
- Abstract要約: eXmYはMLモデルの量子化のための新しいデータ型である。
任意のビット幅と任意の整数および浮動小数点形式の両方をサポートする。
- 参考スコア(独自算出の注目度): 0.9394785985783369
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: eXmY is a novel data type for quantization of ML models. It supports both arbitrary bit widths and arbitrary integer and floating point formats. For example, it seamlessly supports 3, 5, 6, 7, 9 bit formats. For a specific bit width, say 7, it defines all possible formats e.g. e0m6, e1m5, e2m4, e3m3, e4m2, e5m1 and e6m0. For non-power of two bit widths e.g. 5, 6, 7, we created a novel encoding and decoding scheme which achieves perfect compression, byte addressability and is amenable to sharding and vector processing. We implemented libraries for emulation, encoding and decoding tensors and checkpoints in C++, TensorFlow, JAX and PAX. For optimal performance, the codecs use SIMD instructions on CPUs and vector instructions on TPUs and GPUs. eXmY is also a technique and exploits the statistical distribution of exponents in tensors. It can be used to quantize weights, static and dynamic activations, gradients, master weights and optimizer state. It can reduce memory (CPU DRAM and accelerator HBM), network and disk storage and transfers. It can increase multi tenancy and accelerate compute. eXmY has been deployed in production for almost 2 years.
- Abstract(参考訳): eXmYはMLモデルの量子化のための新しいデータ型である。
任意のビット幅と任意の整数および浮動小数点形式の両方をサポートする。
例えば、3, 5, 7, 9ビットフォーマットをシームレスにサポートする。
特定のビット幅については、eg e0m6, e1m5, e2m4, e3m3, e4m2, e5m1, e6m0と定義する。
2ビット幅の非パワー(eg 5, 6, 7)に対して、完全圧縮、アドレス可能性のバイト化を実現し、シャーディングやベクトル処理に適する新しい符号化と復号方式を作成した。
我々は、C++、TensorFlow、JAX、PAXでテンソルとチェックポイントをエミュレーション、エンコーディング、デコードするためのライブラリを実装した。
最適な性能を得るために、コーデックはCPU上のSIMD命令とTPUおよびGPU上のベクトル命令を使用する。
eXmYはテンソル中の指数の統計分布を利用する手法でもある。
ウェイト、静的および動的アクティベーション、勾配、マスターウェイト、オプティマイザ状態の定量化に使うことができる。
メモリ(CPU DRAMとアクセラレータHBM)、ネットワークとディスクのストレージと転送を削減できる。
マルチテナントが増加し、計算が高速化される。
eXmYは約2年前から本番環境に配備されている。
関連論文リスト
- Compressed Real Numbers for AI: a case-study using a RISC-V CPU [2.0516276923852415]
我々は、機械学習アプリケーションにおいて、バイナリ32数値を圧縮する興味深い結果を得た2種類のフォーマットに焦点を当てる。
本稿では,計算直前に浮動小数点のテンソルを分解する方法を提案する。
論文 参考訳(メタデータ) (2023-09-11T07:54:28Z) - INR-Arch: A Dataflow Architecture and Compiler for Arbitrary-Order
Gradient Computations in Implicit Neural Representation Processing [66.00729477511219]
計算グラフとして表される関数を考えると、従来のアーキテクチャはn階勾配を効率的に計算する上で困難に直面している。
InR-Archは,n階勾配の計算グラフをハードウェア最適化データフローアーキテクチャに変換するフレームワークである。
1.8-4.8x と 1.5-3.6x の高速化を CPU と GPU のベースラインと比較した結果を示す。
論文 参考訳(メタデータ) (2023-08-11T04:24:39Z) - DeepGEMM: Accelerated Ultra Low-Precision Inference on CPU Architectures
using Lookup Tables [49.965024476651706]
DeepGEMMはSIMDハードウェア上で超高精度畳み込みニューラルネットワークを実行するためのルックアップテーブルベースのアプローチである。
実装は、x86プラットフォーム上で、対応する8ビット整数カーネルを最大1.74倍の性能で上回る。
論文 参考訳(メタデータ) (2023-04-18T15:13:10Z) - FlexGen: High-Throughput Generative Inference of Large Language Models
with a Single GPU [89.2451963569343]
FlexGenは、単一のコモディティGPU上で大きな言語モデル(LLM)推論を実行するための世代エンジンである。
1つの16GB GPU上でOPT-175Bを実行する場合、FlexGenは最先端のオフロードシステムに比べてスループットが大幅に向上する。
HELMベンチマークでは、FlexGenは7つの代表サブシナリオに16GBのGPUで30Bモデルを21時間でベンチマークすることができる。
論文 参考訳(メタデータ) (2023-03-13T05:19:28Z) - FullPack: Full Vector Utilization for Sub-Byte Quantized Inference on
General Purpose CPUs [0.0]
記憶のためのメモリレイアウトと,サブバイト (4ビット, 2ビット, 1ビット) モデルを処理するための機構について述べる。
音声認識モデルであるMozilla DeepSpeechを適用することで、採用したビット幅に応じて、最先端の処理に比べてエンドツーエンドのスピードアップを実現しています。
論文 参考訳(メタデータ) (2022-11-13T18:13:31Z) - PLSSVM: A (multi-)GPGPU-accelerated Least Squares Support Vector Machine [68.8204255655161]
Support Vector Machines (SVM) は機械学習で広く使われている。
しかし、現代的で最適化された実装でさえ、最先端ハードウェア上の大きな非自明な高密度データセットにはうまくスケールしない。
PLSSVMはLVMのドロップイン代替として使用できる。
論文 参考訳(メタデータ) (2022-02-25T13:24:23Z) - 8-bit Optimizers via Block-wise Quantization [57.25800395197516]
ステートフルズは、例えば過去の値の指数的滑らかな和(運動量付きSGD)や2乗和(アダム)など、時間の経過とともに統計を維持している。
この状態は、通常の勾配降下よりも最適化を加速するために使用することができるが、そうでなければモデルパラメータに割り当てられる可能性のあるメモリを使用する。
本稿では,32ビットの勾配状態を用いた場合の性能レベルを維持しながら,8ビット統計を用いた第1次勾配法を開発する。
論文 参考訳(メタデータ) (2021-10-06T15:43:20Z) - Quantized Neural Networks via {-1, +1} Encoding Decomposition and
Acceleration [83.84684675841167]
本稿では,量子化されたニューラルネットワーク(QNN)をマルチブランチバイナリネットワークに分解するために,-1,+1を用いた新しい符号化方式を提案する。
本稿では,大規模画像分類,オブジェクト検出,セマンティックセグメンテーションにおける提案手法の有効性を検証する。
論文 参考訳(メタデータ) (2021-06-18T03:11:15Z) - Efficient Execution of Quantized Deep Learning Models: A Compiler
Approach [6.616902691349208]
多くのアプリケーションがディープラーニングモデルを使用して予測関数を実装している。
TFLite、MXNet、PyTorchといったディープラーニングフレームワークは、開発者がわずかの精度でモデルを定量化できる。
様々なハードウェアプラットフォーム上で量子化されたモデルを実行するのに適していない。
論文 参考訳(メタデータ) (2020-06-18T01:38:10Z) - Kernel Operations on the GPU, with Autodiff, without Memory Overflows [5.669790037378094]
KeOpsライブラリは、数学的公式によってエントリが与えられるテンソルに対して、高速でメモリ効率のよいGPUサポートを提供する。
KeOpsは、カーネルおよび幾何学的アプリケーションのためのテンソル中心ライブラリの大きなボトルネックであるメモリ消費を緩和する。
KeOpsは、最適化されたC++/CUDAスキームと、Python(NumpyとPyTorch)、Matlab、Rのバインダーを組み合わせる。
論文 参考訳(メタデータ) (2020-03-27T08:54:10Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。