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

CANN/asc-devkit Tiling模板参数选择宏

ASCENDC_TPL_SEL_PARAM【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit功能说明Tiling模板编程时开发者通过调用此接口自动生成并配置TilingKey。使用该接口需要包含定义模板参数和模板参数组合的头文件。详细内容请参考Tiling模板编程。函数原型#define ASCENDC_TPL_SEL_PARAM(context, ...) \ do { \ uint64_t key GET_TPL_TILING_KEY({__VA_ARGS__}); \ context-SetTilingKey(key); \ } while(0) // context指代TilingFunc(gert::TilingContext *context)中的context参数说明参数输入/输出说明context输入TilingFunc注册上下文。...输入可变长参数模板参数的具体值传入时需要与定义模板参数和模板参数组合的头文件中的模板参数顺序保持一致。返回值说明无约束说明无调用示例#include tiling_key_add_custom.h static ge::graphStatus TilingFunc(gert::TilingContext *context) { TilingDataTemplate tiling; uint32_t totalLength context-GetInputShape(0)-GetOriginShape().GetShapeSize(); ge::DataType dtype_x context-GetInputDesc(0)-GetDataType(); ge::DataType dtype_y context-GetInputDesc(1)-GetDataType(); ge::DataType dtype_z context-GetOutputDesc(0)-GetDataType(); uint32_t D_T_X static_castint(dtype_x), D_T_Y static_castint(dtype_y), D_T_Z static_castint(dtype_z), TILE_NUM 1, IS_SPLIT 0; if (totalLength MIN_LENGTH_FOR_SPLIT) { IS_SPLIT 0; TILE_NUM 1; } else { IS_SPLIT 1; TILE_NUM DEFAULT_TILE_NUM; } context-SetBlockDim(NUM_BLOCKS); tiling.set_totalLength(totalLength); tiling.SaveToBuffer(context-GetRawTilingData()-GetData(), context-GetRawTilingData()-GetCapacity()); context-GetRawTilingData()-SetDataSize(tiling.GetDataSize()); ASCENDC_TPL_SEL_PARAM(context, D_T_X, D_T_Y, D_T_Z, TILE_NUM, IS_SPLIT); size_t *currentWorkspace context-GetWorkspaceSizes(1); currentWorkspace[0] 0; return ge::GRAPH_SUCCESS; }【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN/asc-devkit Tiling模板参数选择宏

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

面试官视角:我为什么总爱问C语言static、volatile和extern?

面试官视角:为什么C语言的static、volatile和extern是嵌入式面试的必考题? 在嵌入式软件工程师的面试中,static、volatile和extern这三个C语言关键字几乎成了"保留节目"。作为面试官,我见过太多候选人能机械背诵定义&am…...

用P4和BMv2在Ubuntu上快速搭建一个可编程三层交换机(附完整代码和避坑指南)

用P4和BMv2在Ubuntu上构建可编程交换机的实战指南 当传统网络设备无法满足灵活的业务需求时,P4语言正在重新定义网络数据平面的可能性。想象一下,你可以在30分钟内将一台普通Ubuntu机器变成支持自定义转发逻辑的三层交换机——这正是P4带来的变革力量。本…...

Python-json-logger集成指南:Django、Flask等框架中的终极使用教程

Python-json-logger集成指南:Django、Flask等框架中的终极使用教程 【免费下载链接】python-json-logger Json Formatter for the standard python logger 项目地址: https://gitcode.com/gh_mirrors/py/python-json-logger Python-json-logger是一个强大的J…...

项目实战 (10)---后台搜索Cache优化

目录 背景 技术实现策略 视频预处理阶段的cache技术 视频搜索阶段的cache技术 技术实现 预处理阶段cache策略实现 逻辑 代码 运行结果 问题及注意点 搜索阶段cache策略实现 系统配置层面 逻辑 低版本 GPU CPU 本项目的配置 高版本 描述 go ahead 策略 cac…...

颠覆性AI 3D建模:Zoo Text-to-CAD技术将设计效率提升10倍

颠覆性AI 3D建模:Zoo Text-to-CAD技术将设计效率提升10倍 【免费下载链接】text-to-cad-ui A lightweight UI for interacting with the Zoo Text-to-CAD API. 项目地址: https://gitcode.com/gh_mirrors/te/text-to-cad-ui 在机械设计与工程制造领域&#x…...

终极指南:如何用Mousecape轻松定制macOS鼠标指针,打造个性化桌面体验

终极指南:如何用Mousecape轻松定制macOS鼠标指针,打造个性化桌面体验 【免费下载链接】Mousecape Cursor Manager for OSX 项目地址: https://gitcode.com/gh_mirrors/mo/Mousecape 厌倦了macOS系统千篇一律的白色鼠标指针?想要为你的…...

深度解析Clarity AI超分辨率架构:从算法原理到实战优化指南

深度解析Clarity AI超分辨率架构:从算法原理到实战优化指南 【免费下载链接】clarity-upscaler Clarity AI | AI Image Upscaler & Enhancer - free and open-source Magnific Alternative 项目地址: https://gitcode.com/GitHub_Trending/cl/clarity-upscale…...

AI嵌入式系统测试:融合经典方法与数据驱动验证的工程实践

1. 项目概述:当嵌入式遇见AI,测试的“变”与“不变”干了十几年嵌入式,从8位单片机玩到多核异构处理器,从裸机编程干到复杂的RTOS,我原以为测试这件事,左不过就是单元测试、集成测试、系统测试那几板斧&…...

实战揭秘:Obsidian加州海岸主题如何将macOS美学融入笔记生产力革命

实战揭秘:Obsidian加州海岸主题如何将macOS美学融入笔记生产力革命 【免费下载链接】obsidian-california-coast-theme A minimalist obsidian theme inspired by macOS Big Sur 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-california-coast-theme …...

如何高效获得GitHub社区认可:开发者的3个实用徽章获取策略

如何高效获得GitHub社区认可:开发者的3个实用徽章获取策略 【免费下载链接】community Public feedback discussions for: GitHub Mobile, GitHub Discussions, GitHub Codespaces, GitHub Sponsors, GitHub Issues and more! 项目地址: https://gitcode.com/gh_m…...

3步解锁iOS应用自由:AltStore免越狱安装终极指南

3步解锁iOS应用自由:AltStore免越狱安装终极指南 【免费下载链接】AltStore AltStore is an alternative app store for non-jailbroken iOS devices. 项目地址: https://gitcode.com/gh_mirrors/al/AltStore 还在为iOS设备上无法自由安装应用而烦恼吗&#…...

告别枯燥例程:用STM32F4的CAN总线做个简易‘聊天室’(附代码)

用STM32F4的CAN总线打造趣味聊天室:从零实现双向文本通信 当两块STM32开发板通过CAN总线互相发送"Hello World"时,LED灯闪烁的瞬间往往比教科书上的协议框图更让人记忆深刻。这个项目将带您用两片价值不到百元的STM32F4开发板(或一…...

别再死记硬背了!用‘榨汁机’和‘张三的饭量’搞定高数函数定义域(附3类题型解法)

用生活化思维破解高数函数定义域:从榨汁机到张三的饭量 第一次翻开高等数学教材时,那些密密麻麻的函数符号让我头晕目眩。直到有一天,我在厨房榨果汁时突然顿悟——原来函数就像一台榨汁机,而定义域不过是张三在不同状态下的饭量。…...

别再死记硬背了!用一张图帮你彻底搞懂FC协议栈(从FC-0到FC-4)

用视觉化思维拆解FC协议栈:从物理层到应用层的全景指南 当你第一次接触光纤通道(FC)协议时,那些从FC-0到FC-4的层级、各种端口类型和封装结构是否让你感到头晕目眩?别担心,这篇文章将用全新的视觉化方法&am…...

Zabbix监控华为防火墙丢包?可能是你的SNMP v2c配置没做对(附Python巡检脚本)

Zabbix监控华为防火墙丢包问题的深度排查与自动化解决方案 当Zabbix监控华为防火墙时出现丢包或数据异常,很多工程师的第一反应是检查网络连通性或Zabbix服务器配置,却忽略了防火墙自身SNMP v2c与安全策略的联动机制。本文将揭示这一常见误区的技术根源&…...

不止是部署:深入webrtc-streamer容器,聊聊WebRTC网关的配置、监控与生产环境实践

不止是部署:深入webrtc-streamer容器,聊聊WebRTC网关的配置、监控与生产环境实践 当你已经成功运行了基础版的webrtc-streamer容器,看着浏览器里跳动的视频流,那种成就感不言而喻。但很快你会发现,这仅仅是WebRTC世界的…...

AI Agent Harness Engineering 的安全与伦理挑战:我们如何控制所创造之物?

AI Agent Harness Engineering 的安全与伦理挑战:我们如何控制所创造之物? 关键词:AI Agent 治理、Harness Engineering、对齐问题、灾难性遗忘、人类反馈强化学习、鲁棒性、责任归属 摘要:当我们把AI从“只会做一件事的工具人”升…...

VBO协议

VBO...

用GEE和Landsat 8数据,5步搞定城市生态健康“体检报告”(附完整代码)

城市生态健康体检实战:用GEE和Landsat 8生成可视化评估报告 城市规划师和环保工作者常常需要快速评估城市生态状况,但传统方法耗时费力。Google Earth Engine(GEE)平台结合Landsat 8数据,为我们提供了一种高效解决方案…...

文渊智阁:教育智能化的技术革新与实践

在人工智能技术飞速发展的今天,教育智能化已成为推动科研与教学变革的重要力量。湖北文渊智阁互联网科技有限公司(以下简称“文渊智阁”)凭借其深厚的技术积累和创新能力,在教育智能化领域取得了显著成果。本文将深入探讨文渊智阁…...

CANN/asc-devkit SIMT数学函数erfinvf

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

cimgui生成器完全解析:从Lua脚本到C接口的魔法转换 [特殊字符]

cimgui生成器完全解析:从Lua脚本到C接口的魔法转换 🎯 【免费下载链接】cimgui c-api for imgui (https://github.com/ocornut/imgui) Look at: https://github.com/cimgui for other widgets 项目地址: https://gitcode.com/gh_mirrors/ci/cimgui …...

如何快速实现swagger-jsdoc与TypeScript的完美集成:完整指南

如何快速实现swagger-jsdoc与TypeScript的完美集成:完整指南 【免费下载链接】swagger-jsdoc Generates swagger/openapi specification based on jsDoc comments and YAML files. 项目地址: https://gitcode.com/gh_mirrors/sw/swagger-jsdoc 在现代化的API…...

Hertz.dev未来展望:音频AI技术的演进路线与发展趋势

Hertz.dev未来展望:音频AI技术的演进路线与发展趋势 【免费下载链接】hertz-dev first base model for full-duplex conversational audio 项目地址: https://gitcode.com/gh_mirrors/he/hertz-dev Hertz-dev作为开源的全双工对话音频基础模型,正…...

curtains.js数学工具详解:Vec2、Vec3、Mat4和Quat的使用方法

curtains.js数学工具详解:Vec2、Vec3、Mat4和Quat的使用方法 【免费下载链接】curtainsjs curtains.js is a lightweight vanilla WebGL javascript library that turns HTML DOM elements into interactive textured planes. 项目地址: https://gitcode.com/gh_m…...

Vue-clipboard2 错误处理指南:如何优雅处理复制失败情况

Vue-clipboard2 错误处理指南:如何优雅处理复制失败情况 【免费下载链接】vue-clipboard2 A simple vue2 binding to clipboard.js 项目地址: https://gitcode.com/gh_mirrors/vu/vue-clipboard2 Vue-clipboard2 是一款简单的 Vue2 绑定 clipboard.js 的插件…...

NovelReader插件化扩展指南:如何添加新的翻页效果

NovelReader插件化扩展指南:如何添加新的翻页效果 【免费下载链接】NovelReader 仿照"任阅"的追书、看书的小说阅读器。重写"任阅"的代码,优化代码逻辑和代码结构,降低内存使用率。重写小说阅读器,支持网络阅…...

用STM32F103C8T6给小车装上‘眼睛’:HC-SR04超声波+SG90舵机云台避障保姆级教程

用STM32F103C8T6打造智能小车感知系统:超声波与舵机云台的深度整合实战 在嵌入式系统开发领域,赋予机器"感知-决策-执行"的能力是一个令人着迷的课题。当我们把目光投向智能小车这个经典平台时,如何让它像生物一样具备环境感知能力…...

Hertz.dev多模态应用探索:结合WebRTC的浏览器端音频处理

Hertz.dev多模态应用探索:结合WebRTC的浏览器端音频处理 【免费下载链接】hertz-dev first base model for full-duplex conversational audio 项目地址: https://gitcode.com/gh_mirrors/he/hertz-dev Hertz-dev是一款开源的全双工对话音频基础模型&#xf…...