Contents Menu Expand Light mode Dark mode Auto light/dark mode
PyPTO文档
PyPTO文档

目录

  • 环境部署
    • 环境部署
    • PyPTO安装
  • PyPTO算子开发
    • PyPTO简介
    • 快速入门
      • PyPTO Tensor编程
        • Softmax算子快速入门
      • PyPTO Pro编程
        • HelloWorld(SIMD)
        • Add算子快速入门(SIMD)
        • Matmul算子快速入门(SIMD)
        • Add算子快速入门(SIMT)
    • 编程指南
      • PyPTO Tensor编程
        • 编程范式
        • 算子开发
          • Tensor的创建
          • Tensor的操作
          • Tiling配置
          • 编译与执行
          • 循环和数据切分
          • 条件与分支
        • 调试调优
          • 功能调试
          • 精度调试
          • 性能调优
          • Matmul性能调优指导
          • ffn_shared_expert_quant算子NPU上板调试案例
          • QuantIndexerProlog算子性能优化案例
          • GatedDeltaRule算子性能优化案例
        • PyTorch集成和接入
      • PyPTO Pro编程
        • 编程范式
          • 编程范式概述
          • SIMD编程
            • 编程范式
            • 抽象硬件架构
          • SIMT编程
            • 编程范式
            • 抽象硬件架构
        • 算子开发
          • Kernel核函数
          • Tensor创建和操作
          • Tile创建和操作
          • Vector计算
            • Tile计算
            • Reg计算
            • SIMT计算
          • Cube计算
          • CV融合计算
          • Tiling实现
            • Tiling概述
            • 多核Tiling切分
            • Tiling参数定义与传递
          • 编译与执行
            • JIT编译
            • 离线二进制编译
        • 高级编程
          • 自动CV并行流水
        • 调试调优
          • 功能调试
          • 内存检测
          • 性能调优
    • 附录
      • 术语表
      • 常见问题
        • kernel函数出参未写回导致计算不生效
        • 未设置执行算子的设备ID
        • CANN包不兼容
        • TileShape与Tensor维度不匹配
        • view未传入valid_shape导致精度问题
        • set_xxx_tile_shapes最后一维未32字节对齐
        • 算子编译报堆栈溢出错误
        • 循环中使用Python print函数打印
        • local Tensor无producer时被读取触发device侧断言
        • Loop原理及其描述
        • 使用未初始化的Tensor
        • 同一个Tensor进行View和Assemble导致图成环报错
        • SymbolicScalar不支持循环内自增
        • AI Core kernel执行异常
      • 错误码参考
        • 简介
        • F20000-F3FFFF
        • F4XXXX-F5XXXX
        • F6XXXX
        • F7XXXX-F8XXXX
        • F9XXXX
        • FC0XXX-FC2XXX
        • FC3XXX-FC5XXX
        • FC6XXX-FC8XXX
      • 环境变量参考
        • PTO_TILE_LIB_CODE_PATH
        • TILE_FWK_DEVICE_ID
        • PYPTO_THIRD_PARTY_PATH
        • DUMP_DEVICE_PERF
        • PYPTO_PROF_PMU_EVENT_TYPE
        • PYPTO_LAUNCH_SCHED_SAME_CLUSTER
        • PYPTO_DATADUMP_ENABLE
  • PyPTO API参考
    • PyPTO Tensor API
      • 张量
        • pypto.Tensor简介
        • pypto.Tensor构造函数
        • pypto.Tensor.add
        • pypto.Tensor.amax
        • pypto.Tensor.amin
        • pypto.Tensor.assemble
        • pypto.Tensor.clone
        • pypto.Tensor.concat
        • pypto.Tensor.cos
        • pypto.Tensor.cumprod
        • pypto.Tensor.cumsum
        • pypto.Tensor.dim
        • pypto.Tensor.div
        • pypto.Tensor.dtype
        • pypto.Tensor.exp
        • pypto.Tensor.exp2
        • pypto.Tensor.expand_clone
        • pypto.Tensor.expm1
        • pypto.Tensor.fmod
        • pypto.Tensor.id
        • pypto.Tensor.index_add
        • pypto.Tensor.index_add_
        • pypto.Tensor.format
        • pypto.Tensor.gather
        • pypto.Tensor.gcd
        • pypto.Tensor.get_cache_policy
        • pypto.Tensor.log
        • pypto.Tensor.log10
        • pypto.Tensor.log2
        • pypto.Tensor.logical_not
        • pypto.Tensor.matmul
        • pypto.Tensor.maximum
        • pypto.Tensor.move
        • pypto.Tensor.mul
        • pypto.Tensor.name
        • pypto.Tensor.permute
        • pypto.Tensor.reciprocal
        • pypto.Tensor.remainder
        • pypto.Tensor.reshape
        • pypto.Tensor.round
        • pypto.Tensor.set_cache_policy
        • pypto.Tensor.scatter
        • pypto.Tensor.scatter_
        • pypto.Tensor.scatter_update
        • pypto.Tensor.shape
        • pypto.Tensor.rsqrt
        • pypto.Tensor.sigmoid
        • pypto.Tensor.sin
        • pypto.Tensor.softmax
        • pypto.Tensor.sqrt
        • pypto.Tensor.ceil
        • pypto.Tensor.floor
        • pypto.Tensor.trunc
        • pypto.Tensor.sub
        • pypto.Tensor.sum
        • pypto.Tensor.topk
        • pypto.Tensor.transpose
        • pypto.Tensor.tril
        • pypto.Tensor.tril_
        • pypto.Tensor.triu
        • pypto.Tensor.triu_
        • pypto.Tensor.unsqueeze
        • pypto.Tensor.view
        • pypto.Tensor.where
        • pypto.Tensor.__getitem__
        • pypto.Tensor.__setitem__
      • 标量
        • pypto.Element简介
        • pypto.Element构造函数
        • pypto.Element.dtype
        • pypto.Element.value
      • 操作
        • pypto.abs
        • pypto.acos
        • pypto.acosh
        • pypto.add
        • pypto.amax
        • pypto.amin
        • pypto.arange
        • pypto.argmax
        • pypto.argmin
        • pypto.argsort
        • pypto.asin
        • pypto.asinh
        • pypto.assemble
        • pypto.atan
        • pypto.atan2
        • pypto.atanh
        • pypto.atomic_add
        • pypto.axpy_
        • pypto.bitwise_and
        • pypto.bitwise_left_shift
        • pypto.bitwise_not
        • pypto.bitwise_or
        • pypto.bitwise_right_shift
        • pypto.bitwise_xor
        • pypto.cast
        • pypto.cbrt
        • pypto.ceil
        • pypto.ceil_div
        • pypto.clip
        • pypto.clone
        • pypto.concat
        • pypto.conv_backward_input
        • pypto.conv
        • pypto.cos
        • pypto.cosh
        • pypto.cumprod
        • pypto.cumsum
        • pypto.deinterleave
        • pypto.dequantize
        • pypto.div
        • pypto.eq
        • pypto.erf
        • pypto.erfc
        • pypto.exp
        • pypto.exp2
        • pypto.expand_clone
        • pypto.expand_exp_dif
        • pypto.experimental.assume_divisible
        • pypto.experimental.gather_in_l1
        • pypto.experimental.gather_in_ub
        • pypto.experimental.get_operation_options
        • pypto.experimental.online_softmax
        • pypto.experimental.online_softmax_update
        • pypto.experimental.set_operation_options
        • pypto.experimental.transposed_batchmatmul
        • pypto.expm1
        • pypto.fillpad
        • pypto.floor
        • pypto.floor_div
        • pypto.fmod
        • pypto.full
        • pypto.gather
        • pypto.gathermask
        • pypto.gcd
        • pypto.ge
        • pypto.gt
        • pypto.hypot
        • pypto.index_add
        • pypto.index_add_
        • pypto.index_add__ub
        • pypto.index_add_ub
        • pypto.index_put_
        • pypto.index_select
        • pypto.interleave
        • pypto.isfinite
        • pypto.isnan
        • pypto.le
        • pypto.log
        • pypto.log10
        • pypto.log1p
        • pypto.log2
        • pypto.logical_and
        • pypto.logical_not
        • pypto.lrelu
        • pypto.lt
        • pypto.matmul
        • pypto.maximum
        • pypto.minimum
        • pypto.mul
        • pypto.ne
        • pypto.neg
        • pypto.normal
        • pypto.one_hot
        • pypto.ones
        • pypto.pack
        • pypto.pad
        • pypto.permute
        • pypto.pow
        • pypto.prelu
        • pypto.prod
        • pypto.quant_mx
        • pypto.quantize
        • pypto.reciprocal
        • pypto.relu
        • pypto.remainder
        • pypto.reshape
        • pypto.rms_norm
        • pypto.round
        • pypto.rsqrt
        • pypto.scaled_mm
        • pypto.scatter
        • pypto.scatter_
        • pypto.scatter_update
        • pypto.sigmoid
        • pypto.sign
        • pypto.signbit
        • pypto.sin
        • pypto.sinh
        • pypto.softmax
        • pypto.sqrt
        • pypto.sub
        • pypto.sum
        • pypto.tan
        • pypto.tanh
        • pypto.topk
        • pypto.transpose
        • pypto.tril
        • pypto.triu
        • pypto.trunc
        • pypto.uniform
        • pypto.unpack
        • pypto.unsqueeze
        • pypto.var
        • pypto.view
        • pypto.where
        • pypto.zeros
      • 数据类型
        • CachePolicy
        • CastMode
        • DataType
        • PrecisionType
        • LogBaseType
        • OpType
        • OutType
        • ReduceMode
        • ReLuType
        • ScatterMode
        • SaturationMode
        • TileOpFormat
        • TopKAlgo
        • TransMode
        • pypto.bytes_of
      • 控制流
        • pypto.cond
        • pypto.function
        • pypto.is_loop_begin
        • pypto.is_loop_end
        • pypto.loop
        • pypto.loop_unroll
      • 配置
        • pypto.frontend.jit
        • pypto.experimental.get_runtime_options
        • pypto.experimental.set_runtime_options
        • pypto.get_codegen_options
        • pypto.get_conv_tile_shapes
        • pypto.get_convbp_input_tile_shapes
        • pypto.get_cube_tile_shapes
        • pypto.get_debug_options
        • pypto.get_host_options
        • pypto.get_pass_options
        • pypto.get_pass_config
        • pypto.get_pass_configs
        • pypto.get_pass_default_config
        • pypto.get_vec_tile_shapes
        • pypto.get_verify_options
        • pypto.reset_options
        • pypto.set_codegen_options
        • pypto.set_conv_tile_shapes
        • pypto.set_convbp_input_tile_shapes
        • pypto.set_cube_tile_shapes
        • pypto.set_debug_options
        • pypto.set_host_options
        • pypto.set_matrix_size
        • pypto.set_pass_config
        • pypto.set_pass_default_config
        • pypto.set_pass_options
        • pypto.set_semantic_label
        • pypto.set_vec_tile_shapes
        • pypto.set_verify_options
      • 符号化
        • pypto.SymbolicScalar简介
        • pypto.SymbolicScalar构造函数
        • pypto.SymbolicScalar.as_variable
        • pypto.SymbolicScalar.concrete
        • pypto.SymbolicScalar.is_concrete
        • pypto.SymbolicScalar.is_expression
        • pypto.SymbolicScalar.is_immediate
        • pypto.SymbolicScalar.is_symbol
        • pypto.SymbolicScalar.max
        • pypto.SymbolicScalar.min
      • 其他
        • pypto.from_torch
        • pypto.pass_verify_print
        • pypto.pass_verify_save
        • pypto.set_verify_golden_data
        • pypto.DYNAMIC
        • pypto.frontend.function
    • PyPTO Pro API
      • SIMD API
        • 基础数据结构
          • pypto_pro.language.AccPhase
          • pypto_pro.language.AccToVecMode
          • pypto_pro.language.AtomicType
          • pypto_pro.language.CacheLine
          • pypto_pro.language.CrossCoreSyncMode
          • pypto_pro.language.DataType
          • pypto_pro.language.DcciDst
          • pypto_pro.language.FillPadMode
          • pypto_pro.language.MemorySpace
          • pypto_pro.language.PipeType
          • pypto_pro.language.Ptr
          • pypto_pro.language.QuantMode
          • pypto_pro.language.ReluPreMode
          • pypto_pro.language.RoundMode
          • pypto_pro.language.STPhase
          • pypto_pro.language.SyncAllMode
          • pypto_pro.language.SyncCoreType
          • pypto_pro.language.Tensor
          • pypto_pro.language.TensorLayout
          • pypto_pro.language.TilePad
          • pypto_pro.language.TileType
        • Memory数据搬运
          • pypto_pro.language.insert
          • pypto_pro.language.load
          • pypto_pro.language.load_tile
          • pypto_pro.language.move
          • pypto_pro.language.store
          • pypto_pro.language.store_tile
        • Tile计算
          • 比较
            • pypto_pro.language.eq
          • 复合计算
            • pypto_pro.language.axpy
          • 逐元素计算
            • pypto_pro.language.abs
            • pypto_pro.language.add
            • pypto_pro.language.and_
            • pypto_pro.language.div
            • pypto_pro.language.maximum
            • pypto_pro.language.mul
            • pypto_pro.language.neg
            • pypto_pro.language.relu
            • pypto_pro.language.sub
            • pypto_pro.language.xor
          • 融合矢量计算
            • pypto_pro.language.add_relu
          • 数学函数
            • pypto_pro.language.expands
            • pypto_pro.language.max
            • pypto_pro.language.min
            • pypto_pro.language.sum
          • 选择
            • pypto_pro.language.select
          • 转置与元素读写
            • pypto_pro.language.transpose
          • 类型转换
            • pypto_pro.language.cast
        • Reg计算
          • vf.reg_tensor
          • vf.mask_reg
          • VF枚举类型
            • MaskPattern
            • MergeMode
            • DuplicatePos
            • CastLayout
            • VFRoundMode
            • SaturateMode
            • BinType
            • HistType
            • SqueezeMode
            • PackPart
            • MaskWidth
            • LoadDist
            • StoreDist
            • DataCopyMode
            • IndexOrder
            • MemBarMode
            • SaturationFlagMode
          • 基础算术
            • vf.abs
            • vf.add
            • vf.addc
            • vf.adds
            • vf.div
            • vf.exp
            • vf.leaky_relu
            • vf.ln
            • vf.log
            • vf.log10
            • vf.log2
            • vf.max
            • vf.maxs
            • vf.min
            • vf.mins
            • vf.mul
            • vf.mull
            • vf.muls
            • vf.neg
            • vf.prelu
            • vf.relu
            • vf.sqrt
            • vf.sub
            • vf.subc
          • 逻辑计算
            • vf.and_
            • vf.not_
            • vf.or_
            • vf.shift_left
            • vf.shift_right
            • vf.xor
          • 比较与选择
            • vf.eq
            • vf.ge
            • vf.gt
            • vf.le
            • vf.lt
            • vf.ne
            • vf.select
            • vf.squeeze
          • 类型转换
            • vf.astype
            • vf.bit_cast
            • vf.truncate
          • 数据搬运
            • vf.clear_spr
            • vf.create_addr_reg
            • vf.full
            • vf.gather
            • vf.get_mask_spr
            • vf.load
            • vf.load_align
            • vf.load_unalign
            • vf.load_unalign_init
            • vf.load_unalign_pre
            • vf.mem_bar
            • vf.move
            • vf.scatter
            • vf.store
            • vf.store_align
            • vf.store_unalign
            • vf.store_unalign_post
            • vf.squeeze_store_unalign
            • vf.squeeze_store_unalign_post
            • vf.unalign_reg_for_store
          • 特殊寄存器访问
            • pypto_pro.language.get_spr
            • pypto_pro.language.get_ctrl_spr
            • pypto_pro.language.get_saturation_flag
            • pypto_pro.language.set_ctrl_spr
            • pypto_pro.language.set_saturation_flag
            • pypto_pro.language.reset_ctrl_spr
          • 归约
            • vf.pair_reduce_sum
            • vf.reduce_max
            • vf.reduce_min
            • vf.reduce_sum
          • 复合计算
            • vf.abs_sub
            • vf.axpy
            • vf.exp_sub
            • vf.mul_add_dst
            • vf.mul_dst_add
            • vf.muls_cast
          • 掩码操作
            • vf.create_mask
            • vf.mask_gen_with_reg_tensor
            • vf.update_mask
          • 排序与索引
            • vf.arange
            • vf.histograms
          • 高级计算
            • vf.de_interleave
            • vf.interleave
            • vf.pack
            • vf.unpack
            • vf.unsqueeze
        • Cube计算
          • pypto_pro.language.matmul
          • pypto_pro.language.matmul_acc
          • pypto_pro.language.matmul_mx
          • pypto_pro.language.matmul_mx_acc
          • AccPhase与STPhase配合使用说明
          • pypto_pro.language.system.set_mm_layout_transform
        • 量化
          • pypto_pro.language.dequant
          • pypto_pro.language.quant
        • 控制流
          • pypto_pro.language.range
          • pypto_pro.language.section_cube
          • pypto_pro.language.section_vector
        • 资源管理
          • pypto_pro.language.addptr
          • pypto_pro.language.make_ptr
          • pypto_pro.language.make_tensor
          • pypto_pro.language.make_tile
          • pypto_pro.language.make_tile_group
          • pypto_pro.language.reinterpret
        • 同步控制
          • pypto_pro.language.system.bar_m
          • pypto_pro.language.system.bar_mte1
          • pypto_pro.language.system.bar_mte2
          • pypto_pro.language.system.bar_mte3
          • pypto_pro.language.system.bar_fix
          • pypto_pro.language.system.bar_all
          • pypto_pro.language.system.mutex_lock
          • pypto_pro.language.system.mutex_unlock
          • pypto_pro.language.system.set_cross_core
          • pypto_pro.language.system.sync_all
          • pypto_pro.language.system.sync_src
          • pypto_pro.language.system.sync_dst
          • pypto_pro.language.system.wait_cross_core
        • 缓存控制
          • pypto_pro.language.system.dcci
        • 系统访问变量
          • pypto_pro.language.get_block_idx
          • pypto_pro.language.get_block_num
          • pypto_pro.language.get_subblock_idx
          • pypto_pro.language.get_subblock_num
        • 转置与元素读写
          • pypto_pro.language.fill_index
          • pypto_pro.language.getval
          • pypto_pro.language.set_validshape
          • pypto_pro.language.setval
        • 工具函数
          • pypto_pro.language.make_tuple
          • pypto_pro.language.struct
          • pypto_pro.language.struct_array
      • SIMT API
        • 执行模型
          • pypto_pro.language.simt.thread_idx
          • pypto_pro.language.simt.block_dim
          • pypto_pro.language.simt.block_idx
          • pypto_pro.language.simt.grid_dim
          • pypto_pro.language.simt.linear_thread_idx
        • 标量计算
          • pypto_pro.language.simt.cast
          • pypto_pro.language.simt.bitcast
          • pypto_pro.language.simt.abs
          • pypto_pro.language.simt.min
          • pypto_pro.language.simt.max
          • pypto_pro.language.simt.sqrt
          • pypto_pro.language.simt.rsqrt
          • pypto_pro.language.simt.exp
          • pypto_pro.language.simt.exp2
          • pypto_pro.language.simt.log
          • pypto_pro.language.simt.log2
          • pypto_pro.language.simt.log1p
          • pypto_pro.language.simt.sin
          • pypto_pro.language.simt.cos
          • pypto_pro.language.simt.tanh
          • pypto_pro.language.simt.rint
          • pypto_pro.language.simt.round
          • pypto_pro.language.simt.floor
          • pypto_pro.language.simt.ceil
          • pypto_pro.language.simt.trunc
          • pypto_pro.language.simt.fma
          • pypto_pro.language.simt.isnan
          • pypto_pro.language.simt.isinf
        • 原子操作
          • pypto_pro.language.simt.atomic_add
          • pypto_pro.language.simt.atomic_sub
          • pypto_pro.language.simt.atomic_exch
          • pypto_pro.language.simt.atomic_max
          • pypto_pro.language.simt.atomic_min
          • pypto_pro.language.simt.atomic_inc
          • pypto_pro.language.simt.atomic_dec
          • pypto_pro.language.simt.atomic_cas
          • pypto_pro.language.simt.atomic_and
          • pypto_pro.language.simt.atomic_or
          • pypto_pro.language.simt.atomic_xor
      • Utils API
        • Python语法糖
          • pypto_pro.language.const
          • pypto_pro.language.astype
          • pypto_pro.language.max
          • pypto_pro.language.min
        • 调测API
          • pypto_pro.language.dump_data
          • pypto_pro.language.printf
          • pypto_pro.language.pto_assert
          • pypto_pro.language.trap
Back to top
Edit this page

原子操作#

  • pypto_pro.language.simt.atomic_add
  • pypto_pro.language.simt.atomic_sub
  • pypto_pro.language.simt.atomic_exch
  • pypto_pro.language.simt.atomic_max
  • pypto_pro.language.simt.atomic_min
  • pypto_pro.language.simt.atomic_inc
  • pypto_pro.language.simt.atomic_dec
  • pypto_pro.language.simt.atomic_cas
  • pypto_pro.language.simt.atomic_and
  • pypto_pro.language.simt.atomic_or
  • pypto_pro.language.simt.atomic_xor
Next
pypto_pro.language.simt.atomic_add
Previous
pypto_pro.language.simt.isinf
Copyright © 2025-2026 Huawei Technologies Co., Ltd. All Rights Reserved.
Made with Sphinx and @pradyunsg's Furo