当前位置: 首页 > news >正文

asc-devkit C API asc_and函数

asc_and

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

产品支持情况

产品是否支持
Ascend 950PR/Ascend 950DT

功能说明

对掩码寄存器操作:根据mask对源操作数src0,src1的有效bit进行逻辑与运算,得到新的掩码寄存器。 对矢量数据寄存器操作:根据mask对源操作数src0,src1执行按元素与(&)操作,将结果写入目的操作数dst。

计算公式如下:

$$ dst_i = src0_i & src1_i $$

函数原型

__simd_callee__ inline void asc_and(vector_bool& dst, vector_bool src0, vector_bool src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_uint8_t& dst, vector_uint8_t src0, vector_uint8_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_int8_t& dst, vector_int8_t src0, vector_int8_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_fp8_e4m3fn_t& dst, vector_fp8_e4m3fn_t src0, vector_fp8_e4m3fn_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_fp8_e5m2_t& dst, vector_fp8_e5m2_t src0, vector_fp8_e5m2_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_uint16_t& dst, vector_uint16_t src0, vector_uint16_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_int16_t& dst, vector_int16_t src0, vector_int16_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_half& dst, vector_half src0, vector_half src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_bfloat16_t& dst, vector_bfloat16_t src0, vector_bfloat16_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_uint32_t& dst, vector_uint32_t src0, vector_uint32_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_int32_t& dst, vector_int32_t src0, vector_int32_t src1, vector_bool mask) __simd_callee__ inline void asc_and(vector_float& dst, vector_float src0, vector_float src1, vector_bool mask)

参数说明

参数名输入/输出描述
dst输出目的操作数(掩码寄存器或矢量数据寄存器)。
src0输入源操作数0(掩码寄存器或矢量数据寄存器)。
src1输入源操作数1(掩码寄存器或矢量数据寄存器)。
mask输入源操作数掩码(掩码寄存器)。
• 源操作数为掩码寄存器时,指示在计算过程中哪些bit有效。
• 源操作数为矢量数据寄存器时,对应位置为1时参与计算,为0时不参与计算。mask未筛选的元素在输出中置零。

矢量数据寄存器和掩码寄存器的详细说明请参见reg数据类型定义.md。

返回值说明

流水类型

PIPE_V

约束说明

调用示例

vector_half dst; vector_half src0; vector_half src1; vector_bool mask = asc_create_mask_b16(PAT_ALL); asc_loadalign(src0, src0_addr); // src0_addr是外部输入的UB内存空间地址。 asc_loadalign(src1, src1_addr); // src1_addr是外部输入的UB内存空间地址。 asc_and(dst, src0, src1, mask);

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

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

http://www.gsyq.cn/news/1348423.html

相关文章:

  • 5步快速上手:BarrageGrab多平台直播弹幕实时抓取实战指南
  • Slack+ChatGPT智能工作流搭建全攻略(含17个已验证Prompt模板与RAG增强配置)
  • 如何体验纯净音乐世界:铜钟音乐开源项目的3个实用技巧指南
  • 还在手动调参?Perplexity案例法检索自动化决策树上线:3周内将检索准确率从61%拉升至89.4%
  • Nodejs开发者三步搞定Taotoken接入并实现异步聊天对话功能
  • 技术服务商的AI赋能之路:一个“飞轮效应“的真实案例
  • 咖博士和德龙咖啡机哪个好?2026年家用选择指南 - 品牌排行榜
  • AutoUnipus:5分钟实现U校园全自动刷课,告别手动答题烦恼
  • cppast与libclang集成:为什么选择这个强大的C++解析库
  • 终极Blender 3MF插件指南:3D打印工作流完整解决方案
  • 观察Taotoken平台在流量高峰期的API响应稳定性与容灾表现
  • Perplexity同义词查询避坑手册:87%的API调用都踩了这4个认知误区(含BERT/LLaMA/RoBERTa三模型对比基准)
  • FreeACS深度解析:企业级TR-069 ACS服务器架构设计与实战部署指南
  • 甜红葡萄酒常见问题解答(2026最新专家版) - 资讯纵览
  • 解锁游戏世界的3D模型编辑:NifSkope专业工具深度解析
  • KMS智能激活工具终极指南:如何高效配置Windows和Office永久激活
  • 城市酷选排队免单模式深度拆解:从1.0到6.0的演进逻辑与行业启示
  • 3种免费方法解锁加密音乐:Unlock-Music让你的音乐重获自由
  • 为什么92%的DeepSeek团队在Service Mesh升级后P99延迟反升?内核级eBPF旁路采集方案紧急上线(仅限首批200家白名单)
  • 砀山县黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • ubuntu18.04安装docker容器
  • Keypatch完整指南:IDA Pro必备的多架构汇编插件
  • 2026论文降AIGC网站:11款工具实测谁才是真神器?
  • Taotoken模型广场功能详解与主流模型选型建议
  • 观测对比使用Taotoken聚合调用与直连原厂API的延迟体感
  • Kubernetes部署Dify终极指南:企业级AI应用平台实战手册
  • Mission Planner 完整指南:从零开始掌握无人机地面站操作
  • CANN/pypto余弦函数API文档
  • CANN/asc-devkit:UB到GM数据拷贝函数
  • python笔记和练习----少儿编程课程【阶段一(一)】