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

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),仅供参考
http://www.zskr.cn/news/1336205.html

相关文章:

  • 《CVPR2025-DEIM创新改进项目实战:从原理到部署的深度学习优化全攻略》006、环境搭建:PyTorch 2.0+、CUDA 12.x与DEIM代码库配置
  • 蘑菇博客MoguBlog:微服务架构的前后端分离博客系统完整指南 [特殊字符]
  • GGCNN机器人抓取预测:从零开始掌握实时抓取合成技术
  • 天文科研提速关键突破:Perplexity多模态搜索如何秒级定位哈勃原始FITS文件(含ASTROQUERY兼容配置)
  • python海龟绘图之对话框
  • UE5运行时动态调整游戏视口:解决UI遮挡导致物体位置偏移的实战方案
  • 掌握gibMacOS:三步实现高效获取macOS安装文件的完整方案
  • 智能农历计算引擎:5种实战场景深度解析LunarCalendar集成方案
  • 掌握WiX Toolset:从零打造专业级Windows安装包的完整指南
  • 别再手动敲命令了!用这个Shell脚本5分钟搞定Kerberos集群部署(附避坑指南)
  • 3步解锁iOS应用自由:AltStore免越狱安装终极指南
  • 如何快速上手highcharts-ng:10分钟创建动态图表
  • 火绒弹窗总提示msedgewebview2联网?别慌,这是Office在线编辑在“敲门”
  • 实战指南:利用Rufus创建Windows 11安装U盘并绕过硬件限制的完整方案
  • 2026年靠谱的大连电梯特种柔性电缆/起重设备特种柔性电缆精选推荐公司 - 品牌宣传支持者
  • SpringBlade最佳实践完全清单:企业级开发规范
  • swagger-jsdoc 最佳实践:确保高质量 API 文档的 7 个技巧
  • VBO协议
  • 用GEE和Landsat 8数据,5步搞定城市生态健康“体检报告”(附完整代码)
  • 文渊智阁:教育智能化的技术革新与实践
  • TeamPass安全最佳实践:10个关键设置确保企业数据安全
  • VITON-HD:如何实现1024×768高分辨率虚拟试衣的完整技术解析
  • 掌握FNF-PsychEngine Lua脚本:从基础到高级的完整指南
  • 高阶函数完全指南:掌握JavaScript中map、filter、reduce的深度应用
  • asc-devkit SIMT-API bfloat16转换函数
  • TableFlow开发者指南:如何贡献代码与自定义组件的完整教程
  • 终极指南:在elm-react-native中使用react-native-blur和react-native-swiper实现高级UI效果 [特殊字符]
  • CANN/asc-devkit SIMT数学函数erfinvf
  • 53、CAN总线终端电阻匹配原理与抗反射优化
  • 告别复杂绘图软件:用纯文本快速创建专业图表的终极指南