news 2026/5/9 17:53:39

华为CANN PyPTO分布式共享内存写入API

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为CANN PyPTO分布式共享内存写入API

pypto.distributed.shmem_put

【免费下载链接】pyptoPyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。项目地址: https://gitcode.com/cann/pypto

产品支持情况

产品是否支持
Atlas A3 推理系列产品
Atlas A2 推理系列产品

功能说明

以 offsets 指定的 shared memory tensor 索引位置为基准,将输入的 Tensor 赋值到 shared memory tensor 的对应区域。

函数原型

shmem_put( src: Tensor, offsets: list[Union[int, SymbolicScalar]], dst: ShmemTensor, dst_pe: Union[int, SymbolicScalar], *, put_op: AtomicType = AtomicType.SET, pred: list[Tensor] = None, ) -> Tensor

参数说明

参数名输入/输出说明
src输入源操作数。
支持的数据类型为:DT_INT32,DT_FP16,DT_FP32,DT_BF16。
不支持空 Tensor;Shape 支持 2 - 4 维;Shape Size 不大于 2147483647(即 INT32_MAX)。
支持的数据格式为 ND。
offsets输入dst 的偏移量。
支持 int 或 SymbolicScalar 类型的列表。
offsets 的维度应与 dst 的维度一致,且每个维度的偏移量值应小于 dst 对应维度的大小。
dst输入目的操作数,一个 shared memory tensor,其形状为与src一致。
dst_pe输入shared memory tensor 所属的 pe。
支持的数据类型为 int 或 SymbolicScalar 类型。
0 <= dst_pe < n_pes。
put_op输入数据传输时应用的原子操作类型。
支持的数据类型为: AtomicType.SET,AtomicType.ADD。
默认为 AtomicType.SET 类型。
pred输入用于控制操作执行的依赖关系张量列表。
对数据类型无要求。
不支持空 Tensor。

返回值说明

返回输出 Tensor:用于表示操作完成的依赖关系。

约束说明

调用示例

TileShape 设置示例

说明:调用该接口前,应通过 set_vec_tile_shapes 设置 TileShape。TileShape 维度应和 src 一致。

  • 示例 1:src 的 shape 为 [m, n],TileShape 设置为 [m1, n1],则 m1,n1 分别用于切分 m,n 轴。

    pypto.set_vec_tile_shapes(4, 8)

接口调用示例

  • 示例 1:先创建一个 shared memory tensor。将输入数据赋值到 pe = 1 的 shared memory tensor 的指定区域,并与该视图原本的数据进行累加操作。

    input_tensor = pypto.tensor([16, 64], pypto.DT_BF16, "input_tensor") shmem_shape = input_tensor.shape shmem_tensor = pypto.distributed.create_shmem_tensor(group_name="tp", n_pes=8, dtype=pypto.DT_FP32, shape=shmem_shape) pypto.set_vec_tile_shapes(16, 64) put_out = pypto.distributed.shmem_put( src=input_tensor , offsets=[0, 0], dst=shmem_tensor, dst_pe=1, put_op=pypto.AtomicType.ADD, )
  • 示例 2:先创建一个 shared memory tensor。将输入数据赋值到 pe = 3 的 shared memory tensor 的指定区域,并覆盖该视图原本的数据。

    input_tensor = pypto.tensor([16, 64], pypto.DT_BF16, "input_tensor") shmem_shape = input_tensor.shape shmem_tensor = pypto.distributed.create_shmem_tensor(group_name="tp", n_pes=8, dtype=pypto.DT_FP32, shape=shmem_shape) pypto.set_vec_tile_shapes(16, 64) put_out = pypto.distributed.shmem_put( src=input_tensor, offsets=[0, 0], dst=shmem_tensor, dst_pe=3, put_op=pypto.AtomicType.SET, )

【免费下载链接】pyptoPyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。项目地址: https://gitcode.com/cann/pypto

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 17:52:49

长期项目使用Taotoken在模型迭代与成本间找到平衡点

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 长期项目使用Taotoken在模型迭代与成本间找到平衡点 在长期运行的AI项目中&#xff0c;一个核心挑战在于如何应对模型技术的快速迭…

作者头像 李华
网站建设 2026/5/9 17:51:49

CANN/ops-cv图像裁剪与调整大小算子

CropAndResize 【免费下载链接】ops-cv 本项目是CANN提供的图像处理、目标检测相关的算子库&#xff0c;实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-cv 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 …

作者头像 李华
网站建设 2026/5/9 17:51:48

EGAgent框架:基于实体关系图的长视频语义理解技术

1. 项目概述&#xff1a;当长视频遇见实体图最近在整理一段两小时的会议录像时突然意识到&#xff1a;人类理解长视频的核心能力&#xff0c;其实在于大脑能自动构建场景中的人物、物体及其关系网络。这种认知启发促使我们团队开发了EGAgent框架——一个通过动态构建和更新实体…

作者头像 李华
网站建设 2026/5/9 17:48:09

技术革命:AlienFX Tools - 500KB轻量级AWCC替代方案深度解析

技术革命&#xff1a;AlienFX Tools - 500KB轻量级AWCC替代方案深度解析 【免费下载链接】alienfx-tools Alienware systems lights, fans, and power control tools and apps 项目地址: https://gitcode.com/gh_mirrors/al/alienfx-tools 传统AWCC架构的局限性分析 Al…

作者头像 李华
网站建设 2026/5/9 17:48:09

初次使用Taotoken从注册到发出第一个ChatCompletions请求的全流程

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初次使用Taotoken从注册到发出第一个ChatCompletions请求的全流程 1. 注册账号与获取API Key 要开始使用Taotoken&#xff0c;首先…

作者头像 李华