news 2026/7/17 12:40:19

CANN/asc-devkit Arange等差数列生成函数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/asc-devkit Arange等差数列生成函数

Arange

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

产品支持情况

  • Ascend 950PR/Ascend 950DT:支持
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
  • Atlas 200I/500 A2 推理产品:不支持
  • Atlas 推理系列产品AI Core:支持
  • Atlas 推理系列产品Vector Core:不支持
  • Atlas 训练系列产品:不支持

功能说明

给定起始值,等差值和长度,返回一个等差数列。

实现原理

以float类型,ND格式,firstValue和diffValue输入Scalar为例,描述Arange高阶API内部算法框图,如下图所示。

图1Arange算法框图
![](https://raw.gitcode.com/cann/asc-devkit/raw/1680a8274bf627fb844cc7e09f9e1a9e99e24425/docs/zh/api/figures/Arange算法框图.png "Arange算法框图"?utm_source=gitcode_repo_files)

计算过程分为如下几步,均在Vector上进行:

  1. 等差数列长度8以内步骤:按照firstValue和diffValue的值,使用SetValue实现等差数列扩充,扩充长度最大为8,如果等差数列长度小于8,算法结束;
  2. 等差数列长度8至64的步骤:对第一步中的等差数列结果使用Adds进行扩充,最大循环7次扩充至64,如果等差数列长度小于64,算法结束;
  3. 等差数列长度64以上的步骤:对第二步中的等差数列结果使用Adds进行扩充,不断循环直至达到等差数列长度为止。

函数原型

template <typename T> __aicore__ inline void Arange(const LocalTensor<T>& dst, const T firstValue, const T diffValue, const int32_t count)

参数说明

表1模板参数说明

参数名描述
T操作数的数据类型。不同型号支持的数据类型请参考支持的数据类型。

表2接口参数说明

参数名输入/输出描述
dst输出目的操作数。dst的大小应大于等于count * sizeof(T)。

类型为LocalTensor,支持的TPosition为VECIN/VECCALC/VECOUT。
firstValue输入等差数列的首个元素值。
diffValue输入等差数列元素之间的差值,应大于等于0。
count输入等差数列的长度。count>0。

返回值说明

约束说明

  • 当前仅支持ND格式的输入,不支持其他格式。

  • 支持的数据类型

    Ascend 950PR/Ascend 950DT,支持的数据类型为:int16_t、half、int32_t、float、int64_t。

    Atlas A3 训练系列产品/Atlas A3 推理系列产品,支持的数据类型为:int16_t、half、int32_t、float。

    Atlas A2 训练系列产品/Atlas A2 推理系列产品,支持的数据类型为:int16_t、half、int32_t、float。

    Atlas 推理系列产品AI Core,支持的数据类型为:int16_t、half、int32_t、float。

调用示例

完整样例请参考Arange样例。

// dst:输出Tensor // firstValue_:等差数列首个元素值 // diffValue_:等差数列的公差 // count_:等差数列的长度 AscendC::Arange<T>(dst, static_cast<T>(firstValue_), static_cast<T>(diffValue_), count_);

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/17 12:40:19

Photoshop AI插件SD-PPP:在创意工作流中无缝融合人工智能

Photoshop AI插件SD-PPP&#xff1a;在创意工作流中无缝融合人工智能 【免费下载链接】sd-ppp A Photoshop AI plugin 项目地址: https://gitcode.com/gh_mirrors/sd/sd-ppp 你是否曾为Photoshop中繁琐的AI图像生成流程而困扰&#xff1f;需要在多个软件间切换、反复导出…

作者头像 李华
网站建设 2026/7/17 12:39:56

LED芯片制造与封装技术全解析

1. LED芯片制造&#xff1a;从晶圆到发光核心LED的生产始于半导体晶圆的制备。目前主流采用蓝宝石&#xff08;Al2O3&#xff09;或碳化硅&#xff08;SiC&#xff09;作为衬底材料&#xff0c;通过金属有机化学气相沉积&#xff08;MOCVD&#xff09;设备外延生长氮化镓&#…

作者头像 李华
网站建设 2026/7/17 12:39:47

OpenHuman:可读AI记忆文件的技术原理与应用

1. 为什么我们需要可读的AI记忆文件在AI技术快速发展的今天&#xff0c;大型语言模型已经能够处理海量信息并生成高质量内容。但一个长期被忽视的问题是&#xff1a;这些AI系统如何存储和调用它们的"记忆"&#xff1f;当前主流方案是将知识编码为难以解读的向量或参数…

作者头像 李华
网站建设 2026/7/17 12:38:03

基于自然常数e的分形迭代与《易经》生生之理的数学统一性研究——从科克雪花到玉石纹理

作者&#xff1a;乖乖数学 论文成果评价及基金、国际评议配套材料 将两篇论文结合来看&#xff0c;这并非简单的“跨学科联想”&#xff0c;而是一次真正意义上的第一性原理级范式革命——把东方玄学中最“虚空抽象”的《易经》&#xff0c;锚定在西方数学最“硬核严谨”的自然…

作者头像 李华