曦云系列通用计算GPU运行时API编程指南
  • 1. 概述
  • 2. 编程模型
    • 2.1. 程序结构
    • 2.2. 执行模型
    • 2.3. 内存层次模型
    • 2.4. 核函数
    • 2.5. 动态并行
    • 2.6. 图编程
    • 2.7. MPS多进程服务
  • 3. 编程接口
    • 3.1. 设备管理
      • 3.1.1. 查询设备信息
      • 3.1.2. 选择运行设备
      • 3.1.3. 初始化设备
    • 3.2. 内存管理
      • 3.2.1. 内存申请与释放
      • 3.2.2. 内存拷贝
    • 3.3. 流和事件
      • 3.3.1. 流
        • 3.3.1.1. 代码示例
        • 3.3.1.2. 流管理函数
      • 3.3.2. 事件
        • 3.3.2.1. 代码示例
        • 3.3.2.2. 事件管理函数
      • 3.3.3. 操作并发
        • 3.3.3.1. 使用异步流进行并发
        • 3.3.3.2. 设置流之间依赖
      • 3.3.4. 流回调
    • 3.4. 同步
      • 3.4.1. 系统级同步
      • 3.4.2. 线程块级/线程束级同步
      • 3.4.3. 用户细粒度并行同步
        • 3.4.3.1. 协作组API
        • 3.4.3.2. 线程组集体操作
        • 3.4.3.3. 协作组示例
    • 3.5. 流序内存分配
      • 3.5.1. 基本接口
      • 3.5.2. 内存池和内存池数据结构
      • 3.5.3. 默认内存池
      • 3.5.4. 显式内存池
      • 3.5.5. 物理页面缓存行为
      • 3.5.6. 多GPU的设备可访问性支持
      • 3.5.7. IPC内存池
        • 3.5.7.1. 创建和共享IPC内存池
        • 3.5.7.2. 在导入进程中设置访问权限
        • 3.5.7.3. 从导出的IPC内存池创建和共享分配
        • 3.5.7.4. IPC导出内存池限制
        • 3.5.7.5. IPC导入内存池限制
    • 3.6. 多设备系统编程
      • 3.6.1. 多设备管理
      • 3.6.2. 点对点通信
        • 3.6.2.1. 点对点访问
        • 3.6.2.2. 点对点内存复制
      • 3.6.3. 多GPU设备间的同步
    • 3.7. 动态并行
      • 3.7.1. 核函数
        • 3.7.1.1. 异步启动
        • 3.7.1.2. 启动环境配置
        • 3.7.1.3. 用设备端运行时API启动
      • 3.7.2. 内存管理
        • 3.7.2.1. 内存声明和使用
        • 3.7.2.2. 全局内存
        • 3.7.2.3. 零拷贝内存
        • 3.7.2.4. 常量内存
        • 3.7.2.5. 共享内存和私有内存
        • 3.7.2.6. 私有内存
      • 3.7.3. 设备管理
      • 3.7.4. 流和事件
        • 3.7.4.1. 排序和并发
        • 3.7.4.2. 同步
      • 3.7.5. API附加说明
      • 3.7.6. 代码示例
      • 3.7.7. 性能分析
      • 3.7.8. 限制和注意事项
        • 3.7.8.1. 内存限制
        • 3.7.8.2. API错误和启动失败
    • 3.8. 图编程接口
      • 3.8.1. 显式图编程接口
      • 3.8.2. 流捕获图编程接口
      • 3.8.3. 实例化图更新
        • 3.8.3.1. 整图更新
        • 3.8.3.2. 单个节点更新
        • 3.8.3.3. 启用或禁用节点(Individual Node Enable)
        • 3.8.3.4. 实例化图更新的限制
      • 3.8.4. 图编程的注意事项
        • 3.8.4.1. 图编程的调试接口
    • 3.9. MPS多进程服务
      • 3.9.1. MPS多进程服务控制
        • 3.9.1.1. MPS多进程服务行为说明
        • 3.9.1.2. MPS多进程服务使用限制
  • 4. 编译和调试
    • 4.1. 离线编译和静态运行
      • 4.1.1. Makefile编译和示例
        • 4.1.1.1. CMake编译和示例
    • 4.2. 运行时编译和动态加载
    • 4.3. 代码托管(Binary Cache)
      • 4.3.1. 更改Binary Cache 文件支持Size
      • 4.3.2. 自定义Cache文件路径
      • 4.3.3. 关闭Binary Cache功能
    • 4.4. 环境变量
    • 4.5. 主机代码调试信息
    • 4.6. 设备代码调试信息
      • 4.6.1. 使用GPU printf
      • 4.6.2. 使用GPU Trap Handler
  • 5. 附录
    • 5.1. 术语/缩略语
曦云系列通用计算GPU运行时API编程指南
  • 搜索


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