【寒武纪(7)】MLU的cntoolkit:Cambricon-BANG架构和使用分析,MLU并行计算的硬件抽象、编程模型以及调优思路

文章目录

  • 硬件抽象
    • 1存储
      • 1.1.1 存储层次
      • 访存一致
    • 计算模型
      • 1 Core核内同步和并行
      • 2 核间并行和同步
  • 编程模型
    • 1、Kernel
      • 计算规模
    • 任务类型
    • 执行示例
  • 性能调优
  • 性能调优实践
  • 参考

cambricon BANG架构是基础的,高度抽象的,向用户暴露统一编程模型和编程接口,并提供调试和分析工具。

在这里插入图片描述

硬件抽象

1存储

1.1.1 存储层次

在这里插入图片描述
在这里插入图片描述

访存一致

在这里插入图片描述

计算模型

1 Core核内同步和并行

在这里插入图片描述在这里插入图片描述

2 核间并行和同步

在这里插入图片描述

编程模型

1、Kernel

在MLU 上执行的程序叫做Kernel,每个Task 都执行一次对应的Kernel函数。
在这里插入图片描述
在这里插入图片描述

计算规模

1、需要将一个完整的任务拆分成一系列可以并行的Task,所有的Task构成一个三维网格。
在这里插入图片描述
2、每个Task有一个三维坐标+一个全局唯一的线性ID
在这里插入图片描述

3、每个Task 会被映射到一个物理 Core(cluster)上运行。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

任务类型

kernel 需要多少物理Core(TP)或者cluster。
有两种:1、Block任务(最少一个Core TP);2、Union任务(最少一个cluster)
在这里插入图片描述

执行示例

在这里插入图片描述

性能调优

1、计算效率最大化
2、IO效率最大化

在这里插入图片描述在这里插入图片描述

因此,2个方向调优:1、计算并行;2、计算和IO并行两个方向。和硬件有关,当前一款的MLU代码,到另外不一定效率高。

1、计算效率最大:计算并行,减少计算量,等效替代。
2、IO 效率:减少访存量,计算和访存并行,提升带宽利用率
在这里插入图片描述

性能调优实践

具体看文档《Cambricon-BANG-C-C+±Programming-Guide-CN-v1.5.0.pdf》,有很多技巧。

参考

Cambricon-BANG-C-C+±Programming-Guide-CN-v1.5.0.pdf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/179785.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kerberos认证系统

文章目录 前提知识原理第一次对话第二次对话第三次对话 总结发现 前提知识 KDC:由AS、TGS,还有一个Kerberos Database组成。 Kerberos Database用来存储用户的密码或者其他所有信息,请求的时候需要到数据库中查找。 AS:为客户端提…

语音识别芯片在产品应用上的难点列举

语音识别技术,作为人工智能领域中的一颗璀璨明珠,已经广泛应用于用户交互、智能家居、语音助手等多个领域。它为我们的生活带来了诸多便利,使得我们可以更加高效地与电子设备进行互动。然而,语音识别技术的实现,依赖于…

电脑篇——将串口映射到远程电脑上

通过Windows自带的远程桌面连接功能,可以通过修改本地资源选项,将本机的串口/端口映射到远程电脑上。 即可将端口映射到远程电脑上。 (在远程的电脑的设备管理器中可能不会显示,但是用串口调试相关的工具,是可以找到相…

Linux 6.7 正式移除对英特尔 IA-64 架构安腾处理器的支持

导读随着 Linux 6.7 的到来,主流 Linux 内核将停止对 Intel Itanium(IA-64)处理器的支持。 实际上,Linux 近年来对于 Itanium 的支持一直在走下坡路,没有活跃用户,也没有活跃的主要贡献者来维护 Itanium 代…

数据库事务相关问题

1. 什么是数据库事务? 事务,由一个有限的数据库操作序列构成,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。 假如A转账给B 100 元,先从A的账户里扣除 100 元,再在 B 的账户上加上 100 …

Stable Diffusion WebUI使用AnimateDiff插件生成动画

AnimateDiff 可以针对各个模型生成的图片,一键生成对应的动图。 配置要求 GPU显存建议12G以上,在xformers或者sdp优化下显存要求至少6G以上。 要开启sdp优化,在启动参数加上--sdp-no-mem-attention 实际的显存使用量取决于图像大小&#…

麒麟KYLINOS中使用Ghost镜像文件还原系统

原文链接:麒麟KYLINOS中使用Ghost镜像文件还原系统 hello,大家好啊,今天给大家带来麒麟KYLINOS备份还原的第三篇文章,使用Ghost镜像文件还原系统,将之前做好的Ghost镜像文件拷贝到u盘里,然后在另一台终端上…

如何使用iPhone15在办公室观看家里电脑上的4k电影?

如何使用iPhone15在办公室观看家里电脑上的4k电影? 文章目录 如何使用iPhone15在办公室观看家里电脑上的4k电影?1.使用环境要求:2.下载群晖videostation:3.公网访问本地群晖videostation中的电影:4.公网条件下使用电脑…

智能导诊的开发技术有哪些?

智能导诊源码 智能导诊是医疗领域中一项重要的应用,它可以帮助医生和患者更快速、更准确地诊断疾病,提高医疗效率和精度。以下是智能导诊开发技术的几个方面: 1.数据收集整合 智能导诊系统需要收集大量的医疗数据,包括患者症状、病史、检查结…

栈:括号匹配问题!

目录 题目: 思路分析: 解题思路: 一、配对: 二、数量问题: 三、细节问题: 完整代码: 手撕栈: 题目: 给定一个只包括 (,),{,}&…

基于布谷鸟算法优化概率神经网络PNN的分类预测 - 附代码

基于布谷鸟算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于布谷鸟算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于布谷鸟优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络…

CSS省略号n行公式

记得改图中的n,这是你需要的几行省略号!复制中间的5行就行了。 .text {overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: n; //n为你想省略的行数,需要改-webkit-box-orient: vertical; } 这是…