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

CANN/pto-isa P2P指令详解

P2P 指令详解(TPUT / TGET)

【免费下载链接】pto-isaParallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This repository offers high-performance, cross-platform tile operations across Ascend platforms.项目地址: https://gitcode.com/cann/pto-isa

TPUT — 远程写

数据流srcGlobalData(本地 GM)stagingTileData(UB)dstGlobalData(远端 GM)

当 GlobalTensor 超出 UB Tile 容量时,自动执行二维滑动分块。

接口签名

// 单 Tile(自动分块)— 编译期原子类型 template <AtomicType atomicType = AtomicType::AtomicNone, typename GlobalDstData, typename GlobalSrcData, typename TileData, typename... WaitEvents> RecordEvent TPUT(GlobalDstData &dst, GlobalSrcData &src, TileData &stagingTile, WaitEvents&... events); // 单 Tile — 运行时原子类型 template <typename GlobalDstData, typename GlobalSrcData, typename TileData, typename... WaitEvents> RecordEvent TPUT(GlobalDstData &dst, GlobalSrcData &src, TileData &stagingTile, AtomicType atomicType, WaitEvents&... events); // 乒乓双缓冲 template <AtomicType atomicType = AtomicType::AtomicNone, typename GlobalDstData, typename GlobalSrcData, typename TileData, typename... WaitEvents> RecordEvent TPUT(GlobalDstData &dst, GlobalSrcData &src, TileData &pingTile, TileData &pongTile, WaitEvents&... events);

约束

  • GlobalSrcData::RawDType == GlobalDstData::RawDType
  • TileData::DType == GlobalSrcData::RawDType
  • GlobalSrcData::layout == GlobalDstData::layout
  • dstGlobalData必须指向远端地址
  • srcGlobalData必须指向本地地址
  • stagingTileData必须预先在 UB 中分配
  • 乒乓模式:pingTilepongTile必须相同类型和维度,不重叠的 UB 偏移
  • atomicType支持AtomicNoneAtomicAdd

示例

// 基础远程写 comm::TPUT(dstG, srcG, stagingTile); // 带原子加的远程写 comm::TPUT<AtomicType::AtomicAdd>(dstG, srcG, stagingTile); // 乒乓双缓冲(自动分块) constexpr size_t tileUBBytes = ((64 * 64 * sizeof(float) + 1023) / 1024) * 1024; TileT pingTile(64, 64); TileT pongTile(64, 64); TASSIGN(pingTile, 0); TASSIGN(pongTile, tileUBBytes); comm::TPUT(dstG, srcG, pingTile, pongTile); // 运行时选择原子类型 comm::TPUT(dstG, srcG, stagingTile, AtomicType::AtomicAdd);

TGET — 远程读

数据流srcGlobalData(远端 GM)stagingTileData(UB)dstGlobalData(本地 GM)

接口签名

// 单 Tile template <typename GlobalDstData, typename GlobalSrcData, typename TileData, typename... WaitEvents> RecordEvent TGET(GlobalDstData &dst, GlobalSrcData &src, TileData &stagingTile, WaitEvents&... events); // 乒乓双缓冲 template <typename GlobalDstData, typename GlobalSrcData, typename TileData, typename... WaitEvents> RecordEvent TGET(GlobalDstData &dst, GlobalSrcData &src, TileData &pingTile, TileData &pongTile, WaitEvents&... events);

约束

  • 与 TPUT 类似,但方向相反
  • srcGlobalData指向远端,dstGlobalData指向本地
  • TGET 不支持原子操作

示例

// 基础远程读 comm::TGET(dstG, srcG, stagingTile); // 乒乓双缓冲远程读 comm::TGET(dstG, srcG, pingTile, pongTile);

【免费下载链接】pto-isaParallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This repository offers high-performance, cross-platform tile operations across Ascend platforms.项目地址: https://gitcode.com/cann/pto-isa

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

http://www.jsqmd.com/news/786977/

相关文章:

  • 对比自行维护API中转与使用Taotoken在稳定性上的体感差异
  • 机器学习求解偏微分方程:算子学习与物理信息神经网络全解析
  • AI成本管理利器tokencost:精准计算与监控LLM应用开销
  • Dokploy MCP:基于Docker Compose与MCP协议的轻量级自托管部署平台
  • 小红书自动化发布技术解析:从浏览器模拟到风控对抗
  • GPU加速向量搜索:cuvs库原理、实战与性能调优指南
  • Agent Skills:让 AI 编码像高级工程师一样工作(37,222 Stars)
  • 从原型到生产:构建企业级LangChain应用的核心挑战与实战指南
  • 2026年质量好的番禺旧房翻新改造装修公司/番禺一站式整装装修公司哪家正规 - 品牌宣传支持者
  • 手机相机分辨率
  • 节点与边:LangGraph 中智能体通信的底层机制
  • 开源AI智能体框架安全定制指南:非侵入式补丁与工程化实践
  • 射频测试技术演进与RP-6100系列产品解析
  • mdflow:将Markdown文件转化为可执行AI代理的自动化工具
  • 分治策略与SVD低秩压缩在地震模拟中的应用
  • Riskified在2026年Ascend大会上发布新一代AI套件,为商户赋予前所未有的电商风险可视性和管控能力
  • 哔哩下载姬DownKyi终极指南:3分钟掌握B站视频无损下载的完整教程
  • ARM架构缓存层次与计时器寄存器深度解析
  • 基于大语言模型的LaTeX到HTML智能转换:提升学术文档可访问性
  • 构建结构化技能知识库:从Git管理到团队协作的实践指南
  • 选择诚信通托管服务,这五家机构值得重点关注 - 品牌策略师
  • ClawKernel:基于WebSocket的OpenClaw网关实时监控与管理平台
  • 终极指南:3步破解微信设备限制,实现手机平板双登录
  • Go语言实现Llama模型推理:llama.go项目详解与实战指南
  • Genkit AI应用框架:统一接口、类型安全与RAG实战指南
  • 5步掌握AssetStudio:Unity资源提取与逆向分析全攻略
  • LangGraph 状态管理深度解析:从 State 到持久化
  • AI技术合伙人:从代码生成到项目协作的智能开发框架实践
  • 基于MCP模板快速构建AI工具服务器:从原理到实战
  • LangChain与LangGraph实战:从零构建具备反思能力的AI智能体