From d8a1c54bdac93c51b2e4944051e6f51343453e8c Mon Sep 17 00:00:00 2001 From: DoorKickers <1105976166@qq.com> Date: Thu, 17 Oct 2024 16:47:45 +0800 Subject: [PATCH] add layerNorm GB national standard operator's explanation --- diopi_test/python/configs/diopi_configs.py | 1 + diopi_test/python/conformance/diopi_functions.py | 2 ++ proto/include/diopi/functions.h | 5 ++++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/diopi_test/python/configs/diopi_configs.py b/diopi_test/python/configs/diopi_configs.py index 84283dab0..0ad81385e 100755 --- a/diopi_test/python/configs/diopi_configs.py +++ b/diopi_test/python/configs/diopi_configs.py @@ -7986,6 +7986,7 @@ ), ), + #This test config is for the national standard GB operator version of diopiLayerNorm, which is different from the original interface definition. 'layer_norm': dict( name=["layer_norm"], dtype=[np.float32, np.float64, np.float16], diff --git a/diopi_test/python/conformance/diopi_functions.py b/diopi_test/python/conformance/diopi_functions.py index 452e7c452..3b35e6fc9 100644 --- a/diopi_test/python/conformance/diopi_functions.py +++ b/diopi_test/python/conformance/diopi_functions.py @@ -5270,6 +5270,8 @@ def layer_normGB(input, normalized_shape, weight=None, bias=None, eps=1e-05): bias = None if bias is None else bias out = raw_like(input) + + # Note that, this is the national standard GB operator version, which is different from the diopiLayerNorm interface definition, normalized_shape has changed to begin_norm_axis. func = check_function("diopiLayerNormGB") ret = func( input.context(), diff --git a/proto/include/diopi/functions.h b/proto/include/diopi/functions.h index bc813ad0c..4f7dfcecb 100644 --- a/proto/include/diopi/functions.h +++ b/proto/include/diopi/functions.h @@ -3488,7 +3488,8 @@ DIOPI_API diopiError_t diopiNormBackward(diopiContextHandle_t ctx, diopiTensorHa /** * @brief Applies Layer Normalization over a mini-batch of inputs. - * type=[float32, float64, float16]. + * Note that, this is the national standard GB operator version, which is different from the diopiLayerNorm interface definition, normalized_shape has changed + * to begin_norm_axis. type=[float32, float64, float16]. * @param[in] ctx Context environment. * @param[in] save_mean Mean tensor,the mean value for each feature channel of the input tensor. type=[float32, float64, float16]. * @param[in] save_invstd Backup of inverse standard deviation computed during training. type=[float32, float64, float16]. @@ -3933,6 +3934,8 @@ DIOPI_API diopiError_t diopiLayerNormBackward(diopiContextHandle_t ctx, diopiTen /** * @brief Compute the backward pass for diopiLayerNormGB(). Computes gradients for input, weight, and bias. + * Note that, this is the national standard GB operator version, which is different from the diopiLayerNormBackward interface definition, normalized_shape has + * changed to begin_norm_axis * @param[in] ctx Context environment. * @param[in] grad_output the grad tensor of output. type=[float32, float64, float16]. * @param[in] grad_bias the grad of bias. type=[float32, float64, float16].