/************************************************************************* * Copyright (C) [2023-2024] by Cambricon, Inc. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *************************************************************************/ #ifndef CSRC_KERNELS_ADD_SCALAR_MLUH_ #define CSRC_KERNELS_ADD_SCALAR_MLUH_ #include "kernel_utils.h" namespace tmo { /** * @brief Add src with a scalar and save the result to dst. * @param queue: The queue for mlu. * @param dst: Pointer to the MLU memory of dst. * @param src: Pointer to the MLU memory of src. * @param count: The elements number in src. * @param scalar: The scalar to add. * @note: only support int. dst can overlap with src. */ KernelStatus invokeMLUAddScalar(cnrtQueue_t queue, int *dst, int *src, int count, int scalar); } // namespace tmo #endif // CSRC_KERNELS_ADD_SCALAR_MLUH_