曦云系列通用计算GPU mcPy使用手册

目录

  • 1. 概述
    • 1.1. mcPy 介绍
    • 1.2. 软件包信息
  • 2. 安装部署
    • 2.1. 依赖关系
      • 2.1.1. Python 依赖
    • 2.2. mcPy 安装与卸载
      • 2.2.1. wheel包
    • 2.3. 环境变量设置
    • 2.4. 常见问题
  • 3. mcPy 用户指南
    • 3.1. mcPy 基础
      • 3.1.1. mcPy N维数组基础
      • 3.1.2. 当前设备(Current Device)
      • 3.1.3. 当前流(Current Stream)
      • 3.1.4. 数据传输(Data Transfer)
        • 3.1.4.1. 将数据移动到设备
        • 3.1.4.2. 将数据从设备移动到主机
      • 3.1.5. 编写CPU/GPU无关代码
    • 3.2. 用户自定义内核
      • 3.2.1. Elementwise 内核基本概念
      • 3.2.2. 通用类型的内核
      • 3.2.3. 原始参数标识符
      • 3.2.4. Reduction 内核
      • 3.2.5. 原始内核
      • 3.2.6. 内核参数
      • 3.2.7. 用户自定义数据类型
      • 3.2.8. 原始modules
      • 3.2.9. 内核融合
      • 3.2.10. JIT 编译内核
        • 3.2.10.1. 基本使用方式
        • 3.2.10.2. 基本设计原则
        • 3.2.10.3. 类型规则
        • 3.2.10.4. 使用限制
    • 3.3. 快速傅里叶变换
      • 3.3.1. 用户管理的 FFT 计划
      • 3.3.2. FFT 计划缓存
      • 3.3.3. FFT 回调
      • 3.3.4. 多 GPU FFT
      • 3.3.5. 半精度 FFT
    • 3.4. 内存管理
      • 3.4.1. 内存池操作
      • 3.4.2. 限制显存使用量
      • 3.4.3. 变更内存池
    • 3.5. 高性能最佳实践
      • 3.5.1. 基准测试
      • 3.5.2. 一次性开销
        • 3.5.2.1. 上下文初始化
        • 3.5.2.2. 内核编译
      • 3.5.3. 使用 mcCUB 对归约和其他例程加速
    • 3.6. 互操作性
      • 3.6.1. NumPy
      • 3.6.2. mpi4py
      • 3.6.3. PyTorch
      • 3.6.4. 在 PyTorch 中使用用户自定义内核
      • 3.6.5. 内存管理RMMX
      • 3.6.6. DLPack
        • 3.6.6.1. DLPack 数据交换协议
      • 3.6.7. 显存指针
        • 3.6.7.1. Import
        • 3.6.7.2. Export
      • 3.6.8. MXMACA 流指针
        • 3.6.8.1. Import
        • 3.6.8.2. Export
    • 3.7. mcPy 和 NumPy 的差异
      • 3.7.1. float 到 integer 类型转换
      • 3.7.2. Random 方法支持 dtype 参数
      • 3.7.3. 越界索引
      • 3.7.4. 多次引用同一位置
      • 3.7.5. 零维数组
        • 3.7.5.1. 归约方法
        • 3.7.5.2. 类型提升
      • 3.7.6. 数据类型
      • 3.7.7. 仅接受 mcPy 数组或标量的通用函数
      • 3.7.8. Random 数组种子被散列到一个数字
      • 3.7.9. NaN(not-a-number)处理
      • 3.7.10. 连续性和步长
  • 4. mcPy 编程接口
  • 5. 附录
曦云系列通用计算GPU mcPy使用手册
  • 搜索


© 版权所有 2025 沐曦集成电路(上海)股份有限公司。保留所有权利。