摘要:
OpenCL+GCC+TVM+LLVM+MLIR 如何在使用OpenCL、GCC、TVM、LLVM和MLIR的环境中编译和链接一个项目。提供一个使用C++和这些工具链进行简单计算的示例。 首先,确保已经安装了OpenCL、GCC、TVM、LLVM和MLIR。 接下来,需要安装相应工具集,例如: # 阅读全文
摘要:
分布式训练策略杂谈 5.1 常见的分布式并行策略 5.1.1 为什么分布式训练越来越流行 近年来,深度学习被广泛应用到各个领域,包括计算机视觉、语言理解、语音识别、广告推荐等。在这些不同的领域中,一个共同的特点就是模型规模越来越大,比如 GPT-3 模型的参数量达到1750亿。即使用1024张 80 阅读全文
摘要:
计算机体系结构技术杂谈(下) 2.8 加速Transformer:稀疏注意力加速器分析 1. 稀疏注意力加速器简介 近年来, Transformer模型在深度学习的各个领域,包括自然语言处理、图像分类、图像及语音生成等方面,都取得了远超于传统神经网络模型的表现。最近的ChatGPT和各类基于Tran 阅读全文
摘要:
计算机体系结构技术杂谈(中) 例2:进阶算法 基础算法无法解决中断恢复的问题,即假如有两个写寄存器的操作,指令1,指令2,可能乱序执行时指令2的结果已经将写回了寄存器,但是指令1还未执行,此时发生中断后,从指令1重新开始执行,就会重新进行两次写入,将会发生错误。 只要保证后面指令修改机器状态时, 前 阅读全文
摘要:
算子计算与调度杂谈 9.4.1 GPU内核驱动分析概述 不同CPU相比,GPU中包含了大量的并行计算单元,适合处理像素,矩阵,坐标等大量同类型的数据,因此,很多LINUX上的应用程序为了能够利用GPU的加速功能,都试图和GPU直接打交道,因此,系统中可能有多个组件或者程序同时使用GPU,比如桌面系统 阅读全文
摘要:
计算机体系结构技术杂谈(上) 2.1 计算机的层次结构 2.1.1基本概念介绍 1. 计算机基本概念 1) 机器数:用0和1编码的计算机内部的0/1序列。 2) 真值:机器数真正的值,即:现实中带正负号的数(通常指带符号二进制数对应的真正的数值)。 3) 定点数:将一个实数表示为带有固定小数点位置的 阅读全文
摘要:
NPU基础与AI芯片杂谈 1.1 NPU 基础 近年来,随着人工智能技术的飞速发展,AI 专用处理器如 NPU(Neural Processing Unit)和 TPU(Tensor Processing Unit)也应运而生。这些处理器旨在加速深度学习和机器学习任务,相比传统的 CPU 和 GPU 阅读全文
摘要:
超异构计算杂谈 在这一节中要从更远的视角来看看计算机架构发展的黄金 10 年,主要将围绕异构计算和超异构来展开。在开始具体内容前,非常推荐观看以下两个视频: 计算机架构的新黄金时代:A New Golden Age for Computer Architecture 编译器的黄金时代:The Gol 阅读全文
摘要:
充分考虑兼容需求的自主指令系统——龙架构(LoongArch™) 先进性:吸收近年来指令集发展的先进技术成果,提高代码效率 兼容性:融合X86、ARM等的主要特点,高效支持二进制翻译 模块化:基础部分、二进制翻译、虚拟化、向量化 扩展性:指令槽留有余地,利于今后的持续演进 2020年,龙芯中科基于二 阅读全文
摘要:
矩阵乘法内核优化CUDA杂谈 矩阵乘法内核优化CUDA杂谈 How to Optimize a CUDA Matmul Kernel for cuBLAS-like Performance: a Worklog https://siboehm.com/articles/22/CUDA-MMM 在这篇 阅读全文