CANN/asc-devkit bfloat16x2掩码不等比较函数

发布时间:2026/7/17 8:11:19

CANN/asc-devkit bfloat16x2掩码不等比较函数
__hneux2_mask【免费下载链接】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 训练系列产品不支持功能说明比较两个bfloat16x2_t类型数据的两个分量结果以unsigned int形式返回低16位为第一个分量的掩码结果高16位为第二个分量的掩码结果。如果分量不相等则对应16位掩码为0xFFFF否则为0x0。若任一输入的分量为nan对应16位掩码为0xFFFF。函数原型unsigned int __hneux2_mask(bfloat16x2_t x, bfloat16x2_t y)参数说明表1参数说明参数名输入/输出描述x输入源操作数。y输入源操作数。返回值说明比较输入数据各分量是否不相等的结果满足时对应16位掩码结果为0xFFFF不满足时对应16位掩码结果为0x0。特殊值如下x分量值y分量值对应分量返回值任一分量含nan0xFFFF±0±00x0000infinf0x0000-inf-inf0x0000inf-inf0xFFFF-infinf0xFFFF约束说明无需要包含的头文件使用该接口需要包含simt_api/asc_bf16.h头文件。#include simt_api/asc_bf16.h调用示例SIMT编程场景// 使用短向量可提升数据搬运效率 __global__ __launch_bounds__(1024) void simt_hneux2_mask(bfloat16_t* x, bfloat16_t* y, unsigned int* dst, uint32_t input_total_length) { uint32_t idx blockIdx.x * blockDim.x threadIdx.x; // 每个线程处理1个bfloat16x2_t类型的数据即2个bfloat16_t类型的数据因此idx input_total_length / 2的线程不处理数据 if (idx input_total_length / 2) { return; } bfloat16x2_t* input1 (bfloat16x2_t*)x; bfloat16x2_t* input2 (bfloat16x2_t*)y; dst[idx] __hneux2_mask(input1[idx], input2[idx]); }SIMD与SIMT混合编程场景// 使用短向量可提升数据搬运效率 __simt_vf__ __launch_bounds__(1024) inline void simt_hneux2_mask(__gm__ bfloat16x2_t* x, __gm__ bfloat16x2_t* y, __gm__ unsigned int* dst, uint32_t input_total_length) { uint32_t idx blockIdx.x * blockDim.x threadIdx.x; // 每个线程处理1个bfloat16x2_t类型的数据即2个bfloat16_t类型的数据因此idx input_total_length / 2的线程不处理数据 if (idx input_total_length / 2) { return; } dst[idx] __hneux2_mask(x[idx], y[idx]); } __global__ __vector__ void compare_kernel(__gm__ bfloat16_t* x, __gm__ bfloat16_t* y, __gm__ unsigned int* dst, uint32_t input_total_length) { asc_vf_callsimt_hneux2_mask(dim3(1024), (__gm__ bfloat16x2_t*)x, (__gm__ bfloat16x2_t*)y, dst, input_total_length); }【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

DLSS Swapper终极指南:轻松管理游戏DLSS版本,释放显卡全部潜力

DLSS Swapper终极指南:轻松管理游戏DLSS版本,释放显卡全部潜力

2026/7/17 8:01:18

DLSS Swapper终极指南:轻松管理游戏DLSS版本,释放显卡全部潜力 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 还在为游戏内置的DLSS版本过旧而烦恼吗?想体验最新DLSS版本带来的性能…

终极离线AI写作神器:5分钟打造你的本地化创作助手

终极离线AI写作神器:5分钟打造你的本地化创作助手

2026/7/17 8:01:18

终极离线AI写作神器:5分钟打造你的本地化创作助手 【免费下载链接】AI-Writer AI 写小说,生成玄幻和言情网文等等。中文预训练生成模型。采用我的 RWKV 模型,类似 GPT-2 。AI写作。RWKV for Chinese novel generation. 项目地址: https://g…

AI程序员团队管理:成本优化与高效协作实践

AI程序员团队管理:成本优化与高效协作实践

2026/7/17 8:01:18

1. 项目背景:当AI程序员成为生产力主力军最近业内流传着一个令人震惊的案例:某创业团队仅用3名人类工程师带领100个AI程序员,一个月就烧掉了130万美元的运营成本。更令人意外的是,OpenAI公开表示愿意为这类项目提供资金支持。这个…

SOLID原则:写出好代码的五大准则

SOLID原则:写出好代码的五大准则

2026/7/17 9:31:22

540|SOLID原则:写出好代码的五大准则 你写过这样的代码吗? class User {validate() {... }save() {... }

深入理解Hono OpenAPI中间件:从validator到describeRoute的使用详解

深入理解Hono OpenAPI中间件:从validator到describeRoute的使用详解

2026/7/17 9:31:22

深入理解Hono OpenAPI中间件:从validator到describeRoute的使用详解 【免费下载链接】hono-openapi Hono middleware to generate OpenAPI Swagger documentation 项目地址: https://gitcode.com/gh_mirrors/ho/hono-openapi Hono OpenAPI是一款强大的中间件…

设计模式:那些让代码更优雅的套路

设计模式:那些让代码更优雅的套路

2026/7/17 9:31:22

539|设计模式:那些让代码更优雅的套路 代码写多了,你会发现: 有些问题反复出现,解决思路是类似的。 比如: 创建对象太复杂 → 封装创建过程(工厂模式) 一个类做太多事 → 拆成多个类(职责分离) 要给类加功能 → 不改原类,用扩展(装饰器模式) 这些套路,就是设计…

支付中台2-微信支付

支付中台2-微信支付

2026/7/17 9:31:22

1. 微信支付流程1.1 支付方式 付款码支付JSAPI支付小程序支付Native支付:商家预先指定付款金额APP支付刷脸支付 1.2 接入指引 1.2.1 获取商户号 微信商户平台:https://pay.weixin.qq.com/ 操作步骤: 提交资料签署协议获取商户号1.2.2 获取APP…

格式检测总不合格?2026年论文格式自动纠错工具PaperRed实战测评

格式检测总不合格?2026年论文格式自动纠错工具PaperRed实战测评

2026/7/17 9:31:22

一句话答案:2026年论文格式检测最易出错的10个细节——页边距、行距、字体、参考文献、目录、图表编号、页眉页脚、页码、引用格式、章节编号——PaperRed格式检测功能可一键定位并自动修复。很多同学论文内容写得不错,却在格式检测环节栽了跟头。导师一…

Windows 11 PowerShell别名配置与高效使用指南

Windows 11 PowerShell别名配置与高效使用指南

2026/7/17 9:21:22

1. Windows 11中的PowerShell别名基础在Windows 11的PowerShell环境中,别名(alias)是一个极其实用的功能,它允许用户为复杂的命令或常用操作创建简短的替代名称。想象一下,你每天都要输入"Get-ChildItem"来查…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/16 0:35:09

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/16 14:29:31

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/16 14:18:17

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

2026/7/17 0:00:57

更多请点击: https://intelliparadigm.com 第一章:Cursor终端插件生态避坑指南概览 Cursor 作为基于 VS Code 内核构建的 AI 原生编辑器,其终端插件生态虽活跃,但存在兼容性断层、权限策略突变与调试链路断裂等典型风险。开发者常…

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

2026/7/17 0:00:57

更多请点击: https://codechina.net 第一章:ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表) 提示词工程已从经验试错迈入变量驱动的科学阶段。实证研究表明,影响…

DeepSeek V4替换Codex底座模型的实践与优化

DeepSeek V4替换Codex底座模型的实践与优化

2026/7/17 0:00:57

1. 为什么选择用DeepSeek V4替换Codex的底座模型去年我在开发一个智能代码补全工具时,发现Codex的默认底座模型在复杂业务逻辑场景下表现不尽如人意。经过多次测试对比,DeepSeek V4在以下几个关键指标上展现出明显优势:代码补全准确率&#x…