CANN Ascend C SIMD And逻辑运算
📅 2026/7/16 15:49:07
👁️ 次浏览
# And【免费下载链接】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 训练系列产品不支持功能说明头文件路径为basic_api/reg_compute/kernel_reg_compute_vec_binary_intf.h对RegTensor操作、basic_api/reg_compute/kernel_reg_compute_maskreg_intf.h对MaskReg操作。本节介绍两种接口分别用于对RegTensor和MaskReg进行操作对RegTensor操作根据mask对输入数据srcReg0、srcReg1执行按位与操作将结果写入dstReg。对MaskReg操作根据mask对两个输入MaskReg数据src0、src1执行按位与操作将结果写入dst。函数原型对RegTensor操作template typename T DefaultType, MaskMergeMode mode MaskMergeMode::ZEROING, typename U __simd_callee__ inline void And(U dstReg, U srcReg0, U srcReg1, MaskReg mask)对MaskReg操作__simd_callee__ inline void And(MaskReg dst, MaskReg src0, MaskReg src1, MaskReg mask)参数说明对RegTensor操作表1模板参数说明参数名描述T操作数数据类型。modeMaskMergeMode枚举类型。选择MERGING模式或ZEROING模式。• ZEROING模式下mask未筛选的元素在dstReg中置零。• MERGING模式当前不支持。U目的操作数和源操作数的RegTensor类型例如RegTensoruint32_t由编译器自动推导用户不需要填写。表2参数说明参数名输入/输出描述dstReg输出目的操作数。类型为RegTensor。srcReg0输入源操作数。类型为RegTensor。两个源操作数的数据类型需要与目的操作数保持一致。srcReg1输入源操作数。类型为RegTensor。两个源操作数的数据类型需要与目的操作数保持一致。mask输入指示源操作数元素操作的有效性详细说明请参考MaskReg文档。对MaskReg操作表3参数说明参数名描述dst目的操作数。src0源操作数。src1源操作数。mask指示在计算过程中哪些bit有效。返回值说明无数据类型支持的数据类型为bool、int8_t、uint8_t、int16_t、uint16_t、int32_t、uint32_t、int64_t、uint64_t。约束说明无调用示例对RegTensor操作template typename T __simd_vf__ inline void AndVF(__ubuf__ T* dstAddr, __ubuf__ T* src0Addr, __ubuf__ T* src1Addr, uint32_t count, uint32_t oneRepeatSize, uint16_t repeatTimes) { AscendC::Reg::RegTensorT srcReg0; AscendC::Reg::RegTensorT srcReg1; AscendC::Reg::RegTensorT dstReg; AscendC::Reg::MaskReg mask; for (uint16_t i 0; i repeatTimes; i) { mask AscendC::Reg::UpdateMaskT(count); AscendC::Reg::LoadAlign(srcReg0, src0Addr i * oneRepeatSize); AscendC::Reg::LoadAlign(srcReg1, src1Addr i * oneRepeatSize); AscendC::Reg::And(dstReg, srcReg0, srcReg1, mask); AscendC::Reg::StoreAlign(dstAddr i * oneRepeatSize, dstReg, mask); } }对MaskReg操作template typename T __simd_vf__ inline void AndVF(__ubuf__ T* dstAddr, __ubuf__ T* srcAddr, uint32_t count, uint32_t oneRepeatSize, uint16_t repeatTimes) { AscendC::Reg::RegTensorT srcReg; AscendC::Reg::MaskReg src0 AscendC::Reg::CreateMaskT, AscendC::Reg::MaskPattern::ALLF(); AscendC::Reg::MaskReg src1 AscendC::Reg::CreateMaskT, AscendC::Reg::MaskPattern::ALL(); AscendC::Reg::MaskReg dst; AscendC::Reg::MaskReg mask; for (uint16_t i 0; i repeatTimes; i) { mask AscendC::Reg::UpdateMaskT(count); AscendC::Reg::LoadAlign(srcReg, srcAddr i * oneRepeatSize); AscendC::Reg::And(dst, src0, src1, mask); AscendC::Reg::Adds(srcReg, srcReg, 0, dst); AscendC::Reg::StoreAlign(dstAddr i * oneRepeatSize, srcReg, mask); } }【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
5步搞定:在Android手机上重温英雄无敌3经典战役 【免费下载链接】vcmi Open-source engine for Heroes of Might and Magic III 项目地址: https://gitcode.com/gh_mirrors/vc/vcmi
想要在移动设备上重温《英雄无敌3》的经典策略体验吗?VCMI开源引…
📅 2026/7/16 15:49:07
一句话答案:使用PaperRed智能排版功能,上传论文即可在5分钟内自动完成符合GB/T 7714和学校模板的规范排版,告别反复修改。一、为什么你的毕业论文格式总被打回?每年毕业季,无数硕博生在论文格式上栽了跟头。导师的修改…
📅 2026/7/16 15:49:07
如何高效管理B站多媒体资源:BiliTools跨平台工具箱完整指南 【免费下载链接】BiliTools 本项目已停止维护。 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools
BiliTools是一款基于现代Web技术构建的专业级哔哩哔哩多媒体资源管理工具&#x…
📅 2026/7/16 15:49:07
从手动修改到一键操作:Ghost如何彻底解放你的hosts文件管理 【免费下载链接】ghost Create, list, delete, and modify /etc/hosts entries with ease... 项目地址: https://gitcode.com/gh_mirrors/ghost/ghost
在网络开发和日常使用中,管理/etc…
📅 2026/7/16 16:36:45
Next LS开发实战:如何为Elixir项目定制语言服务器功能 【免费下载链接】next-ls The language server for Elixir that just works. 项目地址: https://gitcode.com/gh_mirrors/ne/next-ls
Next LS是一款专为Elixir打造的语言服务器,它通过直观的…
📅 2026/7/16 16:36:45
在自然语言处理任务中,我们经常需要处理输入序列和输出序列长度不一致的情况,比如机器翻译、文本摘要等。传统的序列模型难以有效应对这种场景,而编码器-解码器架构正是为解决这类问题而设计的经典模型。本文将深入解析编码器的核心概念、工作…
📅 2026/7/16 16:36:45
WhiteWinterWolfs PHP web shell常见问题解答:解决使用中的10个难题 【免费下载链接】wwwolf-php-webshell WhiteWinterWolfs PHP web shell 项目地址: https://gitcode.com/gh_mirrors/ww/wwwolf-php-webshell
WhiteWinterWolfs PHP web shell是一款轻量级但…
📅 2026/7/16 16:36:45
更多请点击:
https://codechina.net
第一章:Excel数据治理最后一公里的AI破局逻辑 在企业数据治理实践中,90%以上的业务部门仍依赖Excel作为核心协作载体——它既是数据入口,也是分析出口,更是审批、校验与归档的最终…
📅 2026/7/16 16:36:45
终极Wand-Enhancer完整指南:快速免费提升WeMod体验 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer
Wand-Enhancer是一款专为WeMod&…
📅 2026/7/16 16:35:45
1. 项目概述:为什么用遗传算法解5皇后问题,而不是直接回溯?我带过十几届算法课,也给不少初创团队做过AI架构咨询。每次讲到组合优化问题,学生和工程师的第一反应永远是“写个回溯试试”。这没错——55棋盘上找所有合法…
📅 2026/7/16 0:00:02
前几天调试一个简单的电源模块,用到了5.1V稳压管。电路接好,上电测试,万用表一量——输出居然只有4.7V。第一反应是稳压管坏了,换了一个新的,结果还是4.7V。这让我想起很多初学者都会遇到的困惑:明明标称5.…
📅 2026/7/16 0:00:02
1. 项目概述与核心价值 在高速数字系统、通信设备乃至精密测量仪器中,一个稳定、纯净且可精确调控的时钟信号,往往是整个系统稳定运行的“心跳”。无论是确保数据在光纤中无误传输,还是让ADC/DAC芯片精准采样,亦或是让多块FPGA板卡…
📅 2026/7/16 0:00:02
豆包openclaw最近圈子里都在聊豆包openclaw,我也没忍住,掏腰包入手了一套。说实话,刚拿到手的时候,心里是打鼓的。毕竟市面上类似的智能硬件太多了,有的吹得天花乱坠,用起来却是一堆bug。为了不让大家的钱打水漂,我连续用了半个月。从开箱到日常高频使用,甚至故意测试它…
📅 2026/7/15 22:51:06
SQLyog 13.3.1 社区版在Windows 10/11上的完整安装与连接指南 对于刚接触MySQL数据库管理的开发者和学生来说,选择一个直观易用的图形化管理工具至关重要。SQLyog作为一款轻量级但功能强大的MySQL GUI工具,能够显著提升数据库操作的效率和体验。本文将详…
📅 2026/7/15 19:03:10
SPEC CPU 2006 跨平台基准测试深度实战:ARM/X86/MIPS 架构配置优化与结果分析方法论在当今多元化的计算架构时代,如何客观评估不同处理器平台的真实性能成为系统工程师和性能优化专家的核心挑战。SPEC CPU 2006 作为业界公认的计算密集型基准测试套件&am…
📅 2026/7/16 14:13:12
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/15 22:46:06
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/16 4:59:31
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/15 22:51:03