From 3a6e9e66659961fe9f94664c9474404bf01b3d72 Mon Sep 17 00:00:00 2001 From: Mengni Wang Date: Wed, 24 Jul 2024 00:55:48 -0700 Subject: [PATCH 1/8] Add doc and align project name Signed-off-by: Mengni Wang --- docs/CONTRIBUTING.md | 6 +- docs/autotune.md | 75 +++++++++++++++++++++++ docs/calibration.md | 4 +- docs/design.md | 2 +- docs/imgs/workflow.png | Bin 67238 -> 223207 bytes docs/installation_guide.md | 2 +- docs/quantization.md | 95 ++++++++--------------------- onnx_neural_compressor/__init__.py | 2 +- onnx_neural_compressor/version.py | 2 +- 9 files changed, 108 insertions(+), 80 deletions(-) create mode 100644 docs/autotune.md diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 62c51476f..efc5c0451 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -9,7 +9,7 @@ Contribution Guidelines 7. [Contributor Covenant Code of Conduct](#contributor-covenant-code-of-conduct) ## Create Pull Request -If you have improvements to ONNX Neural Compressor, send your pull requests for +If you have improvements to Neural Compressor, send your pull requests for [review](https://github.com/onnx/neural-compressor/pulls). If you are new to GitHub, view the pull request [How To](https://help.github.com/articles/using-pull-requests/). ### Step-by-Step guidelines @@ -27,7 +27,7 @@ If you are new to GitHub, view the pull request [How To](https://help.github.com Before sending your pull requests, follow the information below: - Add unit tests in [Unit Tests](https://github.com/onnx/neural-compressor/tree/main/test) to cover the code you would like to contribute. -- ONNX Neural Compressor has adopted the [Developer Certificate of Origin](https://en.wikipedia.org/wiki/Developer_Certificate_of_Origin), you must agree to the terms of Developer Certificate of Origin by signing off each of your commits with `-s`, e.g. `git commit -s -m 'This is my commit message'`. +- Neural Compressor has adopted the [Developer Certificate of Origin](https://en.wikipedia.org/wiki/Developer_Certificate_of_Origin), you must agree to the terms of Developer Certificate of Origin by signing off each of your commits with `-s`, e.g. `git commit -s -m 'This is my commit message'`. ## Pull Request Template @@ -43,7 +43,7 @@ See [PR template](/.github/pull_request_template.md) - Third-party dependency license compatible ## Pull Request Status Checks Overview -ONNX Neural Compressor use [Azure DevOps](https://learn.microsoft.com/en-us/azure/devops/pipelines/?view=azure-devops) for CI test. +Neural Compressor use [Azure DevOps](https://learn.microsoft.com/en-us/azure/devops/pipelines/?view=azure-devops) for CI test. And generally use [Azure Cloud Instance](https://azure.microsoft.com/en-us/pricing/purchase-options/pay-as-you-go) to deploy pipelines, e.g. Standard E16s v5. | Test Name | Test Scope | Test Pass Criteria | |-------------------------------|-----------------------------------------------|---------------------------| diff --git a/docs/autotune.md b/docs/autotune.md new file mode 100644 index 000000000..715b27884 --- /dev/null +++ b/docs/autotune.md @@ -0,0 +1,75 @@ +AutoTune +======================================== + +1. [Overview](#overview) +2. [How it Works](#how-it-works) +3. [Working with Autotune](#working-with-autotune) +4. [Get Started](#get-started) + + +## Overview + +Neural Compressor aims to help users quickly deploy low-precision models by leveraging popular compression techniques, such as post-training quantization and weight-only quantization algorithms. Despite having a variety of these algorithms, finding the appropriate configuration for a model can be difficult and time-consuming. To address this, we built the `autotune` module which identifies the best algorithm configuration for models to achieve optimal performance under the certain accuracy criteria. This module allows users to easily use predefined tuning recipes and customize the tuning space as needed. + +## How it Works + +The autotune module constructs the tuning space according to the pre-defined tuning set or users' tuning set. It iterates the tuning space and applies the configuration on given float model then records and compares its evaluation result with the baseline. The tuning process stops when meeting the exit policy. +The workflow is as below: + + + Workflow + + + +## Working with Autotune + +The `autotune` API can be used across all algorithms supported by Neural Compressor. It accepts three primary arguments: `model_input`, `tune_config`, and `eval_fn`. + +The `TuningConfig` class defines the tuning process, including the tuning space, order, and exit policy. + +- Define the tuning space + + User can define the tuning space by setting `config_set` with an algorithm configuration or a set of configurations. + ```python + # Use the default tuning space + config_set = config.get_woq_tuning_config() + + # Customize the tuning space with one algorithm configurations + config_set = config.RTNConfig(weight_sym=False, weight_group_size=[32, 64]) + + # Customize the tuning space with two algorithm configurations + config_set = [ + config.RTNConfig(weight_sym=False, weight_group_size=32), + config.GPTQConfig(weight_group_size=128, weight_sym=False), + ] + ``` + +- Define the tuning order + + The tuning order determines how the process traverses the tuning space and samples configurations. Users can customize it by configuring the `sampler`. Currently, we provide the [`default_sampler`](https://github.com/onnx/neural-compressor/blob/main/onnx_neural_compressor/quantization/tuning.py#L210), which samples configurations sequentially, always in the same order. + +- Define the exit policy + + The exit policy includes two components: accuracy goal (`tolerable_loss`) and the allowed number of trials (`max_trials`). The tuning process will stop when either condition is met. + +## Get Started +The example below demonstrates how to autotune a ONNX model on four `RTNConfig` configurations. + +```python +from onnx_neural_compressor.quantization import config, tuning + + +def eval_fn(model) -> float: + return ... + + +tune_config = tuning.TuningConfig( + config_set=config.RTNConfig( + weight_sym=[False, True], + weight_group_size=[32, 128] + ), + tolerable_loss=0.2, + max_trials=10, +) +q_model = tuning.autotune(model, tune_config=tune_config, eval_fn=eval_fn) +``` \ No newline at end of file diff --git a/docs/calibration.md b/docs/calibration.md index 33914cb38..8de90fd80 100644 --- a/docs/calibration.md +++ b/docs/calibration.md @@ -10,7 +10,7 @@ Quantization proves beneficial in terms of reducing the memory and computational ## Calibration Algorithms -Currently, ONNX Neural Compressor supports three popular calibration algorithms: +Currently, Neural Compressor supports three popular calibration algorithms: - MinMax: This method gets the maximum and minimum of input values as $α$ and $β$ [^1]. It preserves the entire range and is the simplest approach. @@ -18,7 +18,7 @@ Currently, ONNX Neural Compressor supports three popular calibration algorithms: - Percentile: This method only considers a specific percentage of values for calculating the range, ignoring the remainder which may contain outliers [^3]. It enhances resolution by excluding extreme values but still retaining noteworthy data. -> `kl` is used to represent the Entropy calibration algorithm in ONNX Neural Compressor. +> `kl` is used to represent the Entropy calibration algorithm in Neural Compressor. ## Reference diff --git a/docs/design.md b/docs/design.md index 833d59d38..5b6f50b0b 100644 --- a/docs/design.md +++ b/docs/design.md @@ -1,6 +1,6 @@ Design ===== -ONNX Neural Compressor features an architecture and workflow that aids in increasing performance and faster deployments across infrastructures. +Neural Compressor features an architecture and workflow that aids in increasing performance and faster deployments across infrastructures. ## Architecture diff --git a/docs/imgs/workflow.png b/docs/imgs/workflow.png index b45df9547149b311b39f9c0d363756e644e5335c..87be8e660aa6c64a40dc1112a3f25776b7ac26f6 100644 GIT binary patch literal 223207 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 literal 67238 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 >`5@1Vp+Dfxy_xwaD!8HP+lj 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 diff --git a/docs/installation_guide.md b/docs/installation_guide.md index 5337808de..79c2e8c0b 100644 --- a/docs/installation_guide.md +++ b/docs/installation_guide.md @@ -40,7 +40,7 @@ The following prerequisites and requirements must be satisfied for a successful ## System Requirements ### Validated Hardware Environment -#### ONNX Neural Compressor supports CPUs based on [Intel 64 architecture or compatible processors](https://en.wikipedia.org/wiki/X86-64): +#### Neural Compressor supports CPUs based on [Intel 64 architecture or compatible processors](https://en.wikipedia.org/wiki/X86-64): * Intel Xeon Scalable processor (formerly Skylake, Cascade Lake, Cooper Lake, Ice Lake, and Sapphire Rapids) * Intel Xeon CPU Max Series (formerly Sapphire Rapids HBM) diff --git a/docs/quantization.md b/docs/quantization.md index 39f274c4e..ee8af4460 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -3,12 +3,12 @@ Quantization 1. [Quantization Introduction](#quantization-introduction) 2. [Quantization Fundamentals](#quantization-fundamentals) -3. [Accuracy Aware Tuning](#with-or-without-accuracy-aware-tuning) -4. [Get Started](#get-started) - 4.1 [Post Training Quantization](#post-training-quantization) - 4.2 [Specify Quantization Rules](#specify-quantization-rules) - 4.3 [Specify Quantization Backend and Device](#specify-quantization-backend-and-device) -5. [Examples](#examples) +3. [Get Started](#get-started) + 3.1 [Post Training Quantization](#post-training-quantization) + 3.2 [Specify Quantization Rules](#specify-quantization-rules) + 3.3 [Specify Quantization Recipes](#specify-quantization-recipes) + 3.4 [Specify Quantization Backend and Device](#specify-quantization-backend-and-device) +4. [Examples](#examples) ## Quantization Introduction @@ -54,29 +54,33 @@ Sometimes the reduce_range feature, that's using 7 bit width (1 sign bit + 6 dat | Framework | Backend Library | Symmetric Quantization | Asymmetric Quantization | | :-------------- |:---------------:| ---------------:|---------------:| -| ONNX Runtime | [MLAS](https://github.com/microsoft/onnxruntime/tree/master/onnxruntime/core/mlas) | Weight (int8) | Activation (uint8) | +| ONNX Runtime | [MLAS](https://github.com/microsoft/onnxruntime/tree/master/onnxruntime/core/mlas) | Activation (int8/uint8), Weight (int8/uint8) | Activation (int8/uint8), Weight (int8/uint8) | + +> ***Note*** +> +> Activation (uint8) + Weight (int8) is recommended for performance on x86-64 machines with AVX2 and AVX512 extensions. #### Quantization Scheme + Symmetric Quantization - + int8: scale = 2 * max(abs(rmin), abs(rmax)) / (max(int8) - min(int8) - 1) + + int8: scale = 2 * max(abs(rmin), abs(rmax)) / (max(int8) - min(int8) - 1); zero_point = 0 + + uint8: scale = 2 * max(abs(rmin), abs(rmax)) / (max(uint8) - min(uint8)); zero_point = 0 + Asymmetric Quantization - + uint8: scale = (rmax - rmin) / (max(uint8) - min(uint8)); zero_point = min(uint8) - round(rmin / scale) + + int8: scale = (rmax - rmin) / (max(int8) - min(int8)); zero_point = round(min(int8) - rmin / scale) + + uint8: scale = (rmax - rmin) / (max(uint8) - min(uint8)); zero_point = round(min(uint8) - rmin / scale) #### Reference + MLAS: [MLAS Quantization](https://github.com/microsoft/onnxruntime/blob/master/onnxruntime/python/tools/quantization/onnx_quantizer.py) ### Quantization Approaches -Quantization has three different approaches: +Quantization has two different approaches whcih belong to optimization on inference: 1) post training dynamic quantization 2) post training static quantization -The first two approaches belong to optimization on inference. The last belongs to optimization during training. Currently. ONNX Runtime doesn't support the last one. - #### Post Training Dynamic Quantization -The weights of the neural network get quantized into int8 format from float32 format offline. The activations of the neural network is quantized as well with the min/max range collected during inference runtime. +The weights of the neural network get quantized into 8 bits format from float32 format offline. The activations of the neural network is quantized as well with the min/max range collected during inference runtime. This approach is widely used in dynamic length neural networks, like NLP model. @@ -86,42 +90,20 @@ Compared with `post training dynamic quantization`, the min/max range in weights This approach is major quantization approach people should try because it could provide the better performance comparing with `post training dynamic quantization`. -## With or Without Accuracy Aware Tuning - -Accuracy aware tuning is one of unique features provided by Neural Compressor, compared with other 3rd party model compression tools. This feature can be used to solve accuracy loss pain points brought by applying low precision quantization and other lossy optimization methods. - -This tuning algorithm creates a tuning space based on user-defined configurations, generates quantized graph, and evaluates the accuracy of this quantized graph. The optimal model will be yielded if the pre-defined accuracy goal is met. - -Neural compressor also support to quantize all quantizable ops without accuracy tuning, user can decide whether to tune the model accuracy or not. Please refer to "Get Start" below. - -### Working Flow - -Currently `accuracy aware tuning` only supports `post training quantization`. - -User could refer to below chart to understand the whole tuning flow. - -accuracy aware tuning working flow - - ## Get Started -The design philosophy of the quantization interface of ONNX Neural Compressor is easy-of-use. It requests user to provide `model`, `calibration dataloader`, and `evaluation function`. Those parameters would be used to quantize and tune the model. +The design philosophy of the quantization interface of Neural Compressor is easy-of-use. It requests user to provide `model_input`, `model_output` and `quant_config`. Those parameters would be used to quantize and save the model. -`model` is the framework model location or the framework model object. +`model_input` is the ONNX model location or the ONNX model object. -`calibration dataloader` is used to load the data samples for calibration phase. In most cases, it could be the partial samples of the evaluation dataset. +`model_output` is the path to save ONNX model. -If a user needs to tune the model accuracy, the user should provide `evaluation function`. +`quant_config` is the configuration to do quantization. -`evaluation function` is a function used to evaluate model accuracy. It is a optional. This function should be same with how user makes evaluation on fp32 model, just taking `model` as input and returning a scalar value represented the evaluation accuracy. +User could leverage Neural Compressor to directly generate a fully quantized model without accuracy validation. Currently, Neural Compressor supports `Post Training Static Quantization` and `Post Training Dynamic Quantization`. -User could execute: ### Post Training Quantization -1. Without Accuracy Aware Tuning - -This means user could leverage ONNX Neural Compressor to directly generate a fully quantized model without accuracy aware tuning. It's user responsibility to ensure the accuracy of the quantized model meets expectation. ONNX Neural Compressor supports `Post Training Static Quantization` and `Post Training Dynamic Quantization`. - ``` python from onnx_neural_compressor.quantization import quantize, config from onnx_neural_compressor import data_reader @@ -138,37 +120,8 @@ qconfig = config.StaticQuantConfig(calibration_data_reader) # or qconfig = Dyna quantize(model, q_model_path, qconfig) ``` -2. With Accuracy Aware Tuning - -This means user could leverage the advance feature of ONNX Neural Compressor to tune out a best quantized model which has best accuracy and good performance. User should provide `eval_fn`. - -``` python -from onnx_neural_compressor import data_reader -from onnx_neural_compressor.quantization import tuning, config - -class DataReader(data_reader.CalibrationDataReader): - def get_next(self): ... - - def rewind(self): ... - - -data_reader = DataReader() - -# TuningConfig can accept: -# 1) a set of candidate configs like tuning.TuningConfig(config_set=[config.RTNConfig(weight_bits=4), config.GPTQConfig(weight_bits=4)]) -# 2) one config with a set of candidate parameters like tuning.TuningConfig(config_set=[config.GPTQConfig(weight_group_size=[32, 64])]) -# 3) our pre-defined config set like tuning.TuningConfig(config_set=config.get_woq_tuning_config()) -custom_tune_config = tuning.TuningConfig(config_set=[config.RTNConfig(weight_bits=4), config.GPTQConfig(weight_bits=4)]) -best_model = tuning.autotune( - model_input=model, - tune_config=custom_tune_config, - eval_fn=eval_fn, - calibration_data_reader=data_reader, -) -``` - ### Specify Quantization Rules -ONNX Neural Compressor support specify quantization rules by operator name. Users can use `set_local` API of configs to achieve the above purpose by below code: +Neural Compressor support specify quantization rules by operator name. Users can use `set_local` API of configs to achieve the above purpose by below code: ```python fp32_config = config.GPTQConfig(weight_dtype="fp32") @@ -235,4 +188,4 @@ Neural-Compressor will quantized models with user-specified backend or detecting ## Examples -User could refer to [examples](../../examples/onnxrt) on how to quantize a new model. +User could refer to [examples](../../examples) on how to quantize a new model. diff --git a/onnx_neural_compressor/__init__.py b/onnx_neural_compressor/__init__.py index 2175e2eba..b514e101a 100644 --- a/onnx_neural_compressor/__init__.py +++ b/onnx_neural_compressor/__init__.py @@ -11,4 +11,4 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -"""ONNX Neural Compressor: An open-source Python library supporting popular model compression techniques for ONNXRuntime Framework.""" +"""Neural Compressor: An open-source Python library supporting popular model compression techniques for ONNX models.""" diff --git a/onnx_neural_compressor/version.py b/onnx_neural_compressor/version.py index 08d071fc2..02d80e0b1 100644 --- a/onnx_neural_compressor/version.py +++ b/onnx_neural_compressor/version.py @@ -11,5 +11,5 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -"""ONNX Neural Compressor: An open-source Python library supporting popular model compression techniques for ONNX.""" +"""Neural Compressor: An open-source Python library supporting popular model compression techniques for ONNX models.""" __version__ = "1.0" From fbb92ee8b8f5e866428fd2574d25277e1e9578a1 Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Wed, 24 Jul 2024 15:59:37 +0800 Subject: [PATCH 2/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quantization.md b/docs/quantization.md index ee8af4460..fe3797c3a 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -74,7 +74,7 @@ Sometimes the reduce_range feature, that's using 7 bit width (1 sign bit + 6 dat ### Quantization Approaches -Quantization has two different approaches whcih belong to optimization on inference: +Quantization has two different approaches which belong to optimization on inference: 1) post training dynamic quantization 2) post training static quantization From 64f43f22d78edbfecd70a999a7c0e8d7c4746d16 Mon Sep 17 00:00:00 2001 From: Mengni Wang Date: Thu, 25 Jul 2024 02:19:23 -0700 Subject: [PATCH 3/8] fix bug Signed-off-by: Mengni Wang --- docs/quantization.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/quantization.md b/docs/quantization.md index fe3797c3a..81c8255b3 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -4,9 +4,13 @@ Quantization 1. [Quantization Introduction](#quantization-introduction) 2. [Quantization Fundamentals](#quantization-fundamentals) 3. [Get Started](#get-started) + 3.1 [Post Training Quantization](#post-training-quantization) + 3.2 [Specify Quantization Rules](#specify-quantization-rules) + 3.3 [Specify Quantization Recipes](#specify-quantization-recipes) + 3.4 [Specify Quantization Backend and Device](#specify-quantization-backend-and-device) 4. [Examples](#examples) @@ -124,14 +128,12 @@ quantize(model, q_model_path, qconfig) Neural Compressor support specify quantization rules by operator name. Users can use `set_local` API of configs to achieve the above purpose by below code: ```python -fp32_config = config.GPTQConfig(weight_dtype="fp32") -quant_config = config.GPTQConfig( - weight_bits=4, - weight_dtype="int", - weight_sym=False, - weight_group_size=32, +op_config = config.StaticQuantConfig(per_channel=False) +quant_config = config.StaticQuantConfig( + per_channel=True, ) -quant_config.set_local("/h.4/mlp/fc_out/MatMul", fp32_config) +quant_config.set_local( + "/h.4/mlp/fc_out/MatMul", op_config) ``` From 34790d19d50eaf5e789b4ef7663aeaacdc134957 Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Thu, 25 Jul 2024 17:23:09 +0800 Subject: [PATCH 4/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/quantization.md b/docs/quantization.md index 81c8255b3..45041bcde 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -132,8 +132,7 @@ op_config = config.StaticQuantConfig(per_channel=False) quant_config = config.StaticQuantConfig( per_channel=True, ) -quant_config.set_local( - "/h.4/mlp/fc_out/MatMul", op_config) +quant_config.set_local("/h.4/mlp/fc_out/MatMul", op_config) ``` From 4df230e321d8fe20a87bc8a7241caa8d0bfc368f Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Thu, 25 Jul 2024 18:04:15 +0800 Subject: [PATCH 5/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/docs/quantization.md b/docs/quantization.md index 45041bcde..3831e453f 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -9,9 +9,7 @@ Quantization 3.2 [Specify Quantization Rules](#specify-quantization-rules) - 3.3 [Specify Quantization Recipes](#specify-quantization-recipes) - - 3.4 [Specify Quantization Backend and Device](#specify-quantization-backend-and-device) + 3.3 [Specify Quantization Backend and Device](#specify-quantization-backend-and-device) 4. [Examples](#examples) ## Quantization Introduction @@ -30,11 +28,11 @@ This is so-called `asymmetric quantization`, in which we map the min/max range i here: -If INT8 is specified, $Scale = (|X_{f_{max}} - X_{f_{min}}|) / 127$ and $ZeroPoint = -128 - X_{f_{min}} / Scale$. +If INT8 is specified, $Scale = (|X_{max} - X_{min}|) / 127$ and $ZeroPoint = -128 - X_{min} / Scale$. or -If UINT8 is specified, $Scale = (|X_{f_{max}} - X_{f_{min}}|) / 255$ and $ZeroPoint = - X_{f_{min}} / Scale$. +If UINT8 is specified, $Scale = (|X_{max} - X_{min}|) / 255$ and $ZeroPoint = - X_{min} / Scale$. **Scale Quantization** @@ -44,11 +42,11 @@ The math equation is like: here: -If INT8 is specified, $Scale = max(abs(X_{f_{max}}), abs(X_{f_{min}})) / 127$ and $ZeroPoint = 0$. +If INT8 is specified, $Scale = max(abs(X_{max}), abs(X_{min})) / 127$ and $ZeroPoint = 0$. or -If UINT8 is specified, $Scale = max(abs(X_{f_{max}}), abs(X_{f_{min}})) / 255$ and $ZeroPoint = 128$. +If UINT8 is specified, $Scale = max(abs(X_{max}), abs(X_{min})) / 255$ and $ZeroPoint = 128$. *NOTE* From 91973111425bd04fdd841a0a67ca1bb6fe41c0dd Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Thu, 25 Jul 2024 18:06:36 +0800 Subject: [PATCH 6/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/quantization.md b/docs/quantization.md index 3831e453f..28e34fa66 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -63,14 +63,6 @@ Sometimes the reduce_range feature, that's using 7 bit width (1 sign bit + 6 dat > Activation (uint8) + Weight (int8) is recommended for performance on x86-64 machines with AVX2 and AVX512 extensions. -#### Quantization Scheme -+ Symmetric Quantization - + int8: scale = 2 * max(abs(rmin), abs(rmax)) / (max(int8) - min(int8) - 1); zero_point = 0 - + uint8: scale = 2 * max(abs(rmin), abs(rmax)) / (max(uint8) - min(uint8)); zero_point = 0 -+ Asymmetric Quantization - + int8: scale = (rmax - rmin) / (max(int8) - min(int8)); zero_point = round(min(int8) - rmin / scale) - + uint8: scale = (rmax - rmin) / (max(uint8) - min(uint8)); zero_point = round(min(uint8) - rmin / scale) - #### Reference + MLAS: [MLAS Quantization](https://github.com/microsoft/onnxruntime/blob/master/onnxruntime/python/tools/quantization/onnx_quantizer.py) From 3912bf9af81910e8d973c36d1ac0d064f3334d22 Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Thu, 25 Jul 2024 18:07:02 +0800 Subject: [PATCH 7/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quantization.md b/docs/quantization.md index 28e34fa66..4f8d9b1a0 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -24,7 +24,7 @@ The math equation is like: $$X_{int8} = round(Scale \times X_{fp32} + ZeroPoint) **Affine Quantization** -This is so-called `asymmetric quantization`, in which we map the min/max range in the float tensor to the integer range. Here int8 range is [-128, 127], uint8 range is [0, 255]. +This is so-called `Asymmetric quantization`, in which we map the min/max range in the float tensor to the integer range. Here int8 range is [-128, 127], uint8 range is [0, 255]. here: From 806c08c9c797d0bdcfe7bb819ba3771b19988e5c Mon Sep 17 00:00:00 2001 From: "Wang, Mengni" Date: Thu, 25 Jul 2024 18:07:25 +0800 Subject: [PATCH 8/8] Update quantization.md Signed-off-by: Wang, Mengni --- docs/quantization.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quantization.md b/docs/quantization.md index 4f8d9b1a0..723d72b07 100644 --- a/docs/quantization.md +++ b/docs/quantization.md @@ -20,7 +20,7 @@ Quantization is a very popular deep learning model optimization technique invent `Affine quantization` and `Scale quantization` are two common range mapping techniques used in tensor conversion between different data types. -The math equation is like: $$X_{int8} = round(Scale \times X_{fp32} + ZeroPoint)$$. +The math equation is like: $X_{int8} = round(Scale \times X_{fp32} + ZeroPoint)$. **Affine Quantization**