人工智能训练与推理
文章平均质量分 83
AI
普通网友
这个作者很懒,什么都没留下…
展开
-
稀疏向量计算技术杂谈
稀疏向量计算技术杂谈原创 2022-07-18 05:30:23 · 1467 阅读 · 0 评论 -
AI芯片技术市场思考
AI芯片技术市场思考原创 2022-07-10 05:23:39 · 1054 阅读 · 6 评论 -
MLIR技术杂谈
MLIR技术杂谈原创 2022-06-08 06:32:18 · 1219 阅读 · 2 评论 -
从设计到消费产品
从设计到消费产品半导体简介半导体:现代电子产品的大脑当点击、滑触、输入或与电子设备交谈时,希望指令能够得到正确的即时响应。 但是在这个过程中是什么在搜索、量化、优化和交付期望的结果? 在大多数情况下,是半导体。“半导体”是在教育、研究、通信、医疗保健、交通运输、能源和其他行业中使用的成百上千万电子设备的关键组件。 当今的个人计算机、智能手机、汽车、数据中心服务器和游戏机都依靠半导体来实现核心运算和高级功能。 例如,当使用笔记本预订假期,查找餐厅推荐,播放电影或访问电子邮件时,笔记本中基于半导体的 C原创 2022-05-13 06:20:49 · 143 阅读 · 0 评论 -
AMD与Intel,挑战英伟达GPU
AMD与Intel,挑战英伟达GPU作为CPU界的霸主,英特尔对高性能GPU市场一直没有死心。从1998年和Real3D合作推出的i740独显,到2009年无故流产的Larrabee独显,再到去年公布的Xe GPU架构。任谁来都能看出,英特尔进军独立显卡市场只是时间问题。对于NVIDIA和AMD来说,英特尔的加入听起来似乎是个坏消息。但是对于消费者而言,英特尔的加入无疑给了更多的选择。问题来了,英特尔“锐炫”系列高性能显卡究竟能够给出怎样的性能表现?英特尔能否通过在GPU市场上的发力,给友商NVIDIA原创 2022-05-12 06:39:16 · 1112 阅读 · 0 评论 -
GPU技术与动态
GPU技术与动态图形处理器(英语:graphics processing unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。GPU使显卡减少了对CPU的依赖,并进行部分原本CPU的工作,尤其是在3D图形处理时GPU所采用的核心技术有硬件T&L(几何转换和光照处理)、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等,而硬件T&L技原创 2022-05-07 06:40:34 · 798 阅读 · 0 评论 -
从GPU规格、架构、成本和性能说起
从GPU规格、架构、成本和性能说起Nvidia 是2月底网络攻击的受害者,被黑客入侵并丢失了大量数据。这次黑客攻击不仅对英伟达来说是一场灾难,对所有芯片公司和所有“西方”国家的国家安全来说都是一场灾难。据介绍,被黑的数据包括英伟达下一代GPU Hopper 和 Ada 的详细规格和模拟数据。Hopper现在正在发货,并由 Nvidia 在 GTC 上发布。规格与这次泄漏完全匹配,但以 Ada Lovelace 命名的 Ada 仍然需要几个月的时间。Ada,下一代客户端和视频专业 GPU 将是本文的主原创 2022-04-24 06:22:22 · 975 阅读 · 0 评论 -
Transformer模型技术长文
Transformer模型技术长文可高效处理长文本的模型Longformer、和堪称“升级版”Transformer的BigBird模型,到底有什么区别?Transformer的其他各种变体(X-former)到底都长什么样、又有哪些新应用?由于Transformer模型的发展速度日新月异,一天一个样,哪怕是隔段时间回来研究,模型可能也已经多了不少。Transformer模型,是谷歌在2017年推出的NLP经典模型(Bert就是用的Transformer)。本文参考链接https://mp.w原创 2022-04-21 06:21:25 · 1914 阅读 · 0 评论 -
GPU、AI芯片技术市场分析
GPU、AI芯片技术市场分析市场将高速增长,GPU曙光初现,预计到2024年,国内人工智能技术市场规模将达到172亿美元;全球占比将从2020年12.5%上升到15.6%,是全球市场增长的主要驱动力,在AI计算的训练和推理两个领域,已经有不少初创公司发布了GPU产品。异构计算是灵活性和效率综合平衡的结果,训练指模拟人类接收、学习并理解外界信息能力的AI技术;推理指模拟人类通过学习、判断、分析等心理活动获取信息内含逻辑的AI技术。从部署的灵活性来看,CPU最为灵活 ,GPU次之 ,FPGA和ASIC分列原创 2022-03-30 06:08:33 · 1281 阅读 · 0 评论 -
TensorRT-8量化分析
TensorRT-8量化分析本文讲非对称量化、量化方式等等一些细节,不过有一段时间在做基于TensorRT的量化,需要看下TensorRT的量化细节。这次文章是偏实践的一篇,主要过一下TensorRT对于explict quantization的流程和通用的量化思路。010x01 TensorRT量化都2022年了,量化技术已经很成熟了,各种量化框架[1]和量化算法层出不穷。之前接触过几个量化框架,大部分都是在算法层面模拟一下,实际上无法直接部署到具体的硬件层,也只是停留在算法的层面。而现在成熟的量原创 2022-03-17 06:14:29 · 2158 阅读 · 1 评论 -
AI编译器TVM部署示例解析
AI编译器TVM部署示例解析AI编译器TVM(一)——一个简单的例子概述什么是TVM?TVM可以称为许多工具集的集合,这些工具可以组合起来使用,实现一些神经网络的加速和部署功能。这也是为什么叫做TVM Stack了。TVM的使用途径很广,几乎可以支持市面上大部分的神经网络权重框架(ONNX、TF、Caffe2等),也几乎可以部署在任何的平台,如Windows、Linux、Mac、ARM等等。参考文献https://oldpan.me/archives/the-first-step-towards原创 2022-03-07 20:35:07 · 2696 阅读 · 0 评论 -
英伟达GPU造物?从原子开始3D模拟活细胞
英伟达GPU造物?从原子开始3D模拟活细胞【新智元导读】在计算机里以原子级模拟一个活细胞需要多少个「肝」?最近有研究人员创造了一个完整的支原体细胞,还是活的!能够在电脑上模拟全部的物理、化学性质,整个模拟时间不到20分钟!从原子级开始,亲手创造一个细胞是什么体验?最近,来自伊利诺伊大学厄巴纳·香槟分校(University of Illinois at Urbana-Champaign)的研究人员成功在原子粒度上模拟了一个最小的活细胞(living minimal cell),使用到的加速设备为Nv原创 2022-02-06 08:52:46 · 5876 阅读 · 6 评论 -
量子力学历史与理论
量子力学历史与理论提到量子力学,很多人的第一反应是微观、不连续、不确定,然后就是玄乎、奇怪、诡异,乃至恐怖。有这样的想法并不奇怪,毕竟,它跟经典物理的确不太一样,大家也乐于相信玻尔说的:“如果谁不为量子力学感到困惑,他就还没理解它。”许多文章、视频也喜欢把量子力学往这个方向上引,大肆宣扬“看一眼”决定猫的生死,告诉你双缝实验有多“恐怖”,把意识和量子力学扯在一起等等。于是,量子力学在大众眼里就越来越玄乎,越来越诡异,越来越恐怖了。其实,量子力学并不奇怪,你觉得它奇怪,主要是因为你老是从经典力学的视原创 2022-01-29 06:31:47 · 2088 阅读 · 2 评论 -
Jeff Dean回顾谷歌2021
Jeff Dean回顾谷歌2021新年伊始,谷歌AI掌门人Jeff Dean的年度总结「虽迟但到」,这篇万字长文系统回顾了过去一年来机器学习领域的五大趋势。除了超大AI模型,谷歌去年还做了啥?2021年,谷歌在机器学习领域可谓是十分高产。 毕竟,这帮人在NeurIPS 2021上就投了177篇论文。 1月11日,Jeff Dean终于用一篇万字长文完成了总结。趋势 1:功能更强大、通用的机器学习模型研究人员正在训练出比以往任何时候更大、功能更强大的机器学习模型。近几年,语言领域的模型规模迅速增长,原创 2022-01-13 06:10:01 · 434 阅读 · 0 评论 -
高通为何46亿美元ADAS Veoneer Arriver
高通为何46亿美元ADAS Veoneer Arriver彭博9月13日引述消息人士报导,高通正式提案以逾40亿美元收购瑞典先进驾驶辅助系统(ADAS)技术商Veoneer,以超过麦格纳的报价在竞标案中取得优势。本文引用地址:http://www.eepw.com.cn/article/202110/428682.htmVeoneer日前证实,高通公司已经向Veoneer发出了一份以每股37美元现金支付“最新的非约束性”收购要约,交易金额将达到46亿美元。Veoneer表示,Veoneer与麦格纳之间原创 2022-01-11 18:04:46 · 604 阅读 · 0 评论 -
OpenCL,OpenGL编译
OpenCL,OpenGL编译TVM已经支持多个硬件后端:CPU,GPU,移动设备等…添加了另一个后端:OpenGL / WebGL。OpenGL / WebGL能够在没有安装CUDA的环境中利用GPU。目前,这是在浏览器中使用GPU的唯一方式。这个新的后端允许以一下3种方式使用OpenGL / WebGL:• 本地OpenGL:可以将深度学习模型编译成OpenGL,并直接在本地机器上运行,完全只使用Python。• 带有RPC的WebGL:可以将深度学习模型编译为WebGL,作为一个共享库导出,原创 2022-01-11 12:00:34 · 778 阅读 · 0 评论 -
relay.build调用关系
relay.build调用关系在用TVM优化过程中,常见demo如下图:relay.build背后的调用机制梳理如下:python中的build函数实现如下,此方法实际调用了BuildModule类的build方法,BuildModule获取的C++函数build方法,此处涉及混合编程:_build_module._BuildModule() 来自于这句注册:tvm._ffi._init_api(“relay.build_module”, name)self.mod[“build”]调用原创 2022-01-10 17:52:31 · 256 阅读 · 0 评论 -
编译器 llvm clang 源码转换示例
编译器 llvm clang 源码转换示例从git获取llvm项目的源码方式:git clone https://github.com/llvm/llvm-project.git下载源码后,进入llvm-project目录包括如下内容:llvm-project/llvm目录包括如下内容:CLANG实战实战 利用Clang制作自己的编译器 source-to-source 源代码转换参考:https://github.com/Ewenwan/llvm-clang-samples/b原创 2022-01-01 06:15:38 · 520 阅读 · 1 评论 -
Cache Memory技术示例
Cache Memory技术示例为什么需要cache?如何判断一个数据在cache中是否命中?cache的种类有哪些,区别是什么?为什么需要cache memory先思考第一个问题:程序是如何运行起来的?应该知道程序是运行在 RAM之中,RAM 就是常说的DDR(例如 DDR3、DDR4等)。称为main memory(主存)当需要运行一个进程时,先从Flash设备(例如,eMMC、UFS等)中,将可执行程序load到main memory中,然后开始执行。在CPU内部存在一堆的通用寄存器(regis原创 2021-12-31 06:06:56 · 367 阅读 · 0 评论 -
企业如何选择音视频会议系统分析
企业如何选择音视频会议系统分析腾讯会议和钉钉,哪个费用更划算?市面上的两大视频会议软件,腾讯会议和钉钉,收费标准和付费功能哪个性价比更高,适合长期使用腾讯会议和钉钉我都用过,个人认为性价比高一点的是腾讯会议。具体说说为什么腾讯会议比钉钉更划算,更适合长期使用。首先,先来分别说下腾讯会议和钉钉的需要付费使用的功能。腾讯会议腾讯会议收费的版本有商业版和企业版,还有专为会议室打造的软件系统,腾讯会议 Rooms。商业版支持不限时长的多人群组会议及升级会管会控,最多支持2000人同时入会、1080P高清原创 2021-12-24 06:04:06 · 1200 阅读 · 0 评论 -
SECTIONS bss段初始化分析
SECTIONS bss段初始化分析都知道bss段需要初始化,但是这是为什么呢?通过浏览资料,都会发现,bss段是不会出现在程序下载文件(*.bin .hex)中的,因为全都是0。如果把出现在程序下载文件中,会增加程序下载文件的大小。实际应用中,通常只需要把bss段的起始地址和结束地址保存起来,而不需要将程序下载文件中出现bss段(一堆0)将来真正运行程序的时候,再根据这两个数据进行bss段的初始化就行了。以上这段文字是网上的资料说的。但是,可不可以让bss段出现在程序下载文件中呢?如果这样可以的话,原创 2021-12-23 05:29:17 · 642 阅读 · 0 评论 -
堆栈,数据,文本,heap,bss,text data,stack
堆栈,数据,文本,heap,bss,text data,stacktext data bss stack heap 段根据APUE,程序分为下面的段:.text, data (initialized), bss, stack, heap。data/bss/text:text段在内存中被映射为只读,但.data和.bss是可写的。bss是英文Block Started by Symbol的简称,通常是指用来存放程序中未初始化的全局变量的一块内存区域,在程序载入时由内核清0。BSS段属于静态内存分配。原创 2021-12-21 06:09:13 · 289 阅读 · 0 评论 -
Swift与LLVM-Clang原理与示例
Swift与LLVM-Clang原理与示例LLVM 学习从 简单汇编基础 到 Swift 不简单的 a + 1作为iOS开发,程序崩溃犹如家常便饭,秉着没有崩溃也要制造崩溃的原则每天都吃的很饱但学艺不精的经常有这样的困扰,每次崩溃都定位到一堆。类似movq $0x0, 0xc7a(%rip) 的天书里面初识汇编虽然不知道movq是什么意思,但知道movemove 的意思,没错是 飘逸至于q,不管 q不q 的,哎e呢?汇编语言汇编语言:(assembly language原创 2021-12-20 06:01:29 · 414 阅读 · 0 评论 -
Imagination 的神经网络加速器和 Visidon 的去噪算法被证明是完美的搭档
Imagination 的神经网络加速器和 Visidon 的去噪算法被证明是完美的搭档本文是总部位于芬兰的Visidon和总部位于英国的 Imagination合作的结果。Visidon 是公认的相机图像增强和分析算法专家,Imagination 拥有一系列世界一流的神经网络加速器(NNA),每个内核的性能高达每秒 100 TOPS。本文解决的问题是对来自传统彩色相机的图像进行去噪。解决方案分为两部分:• 在不破坏图像细节的情况下去除噪声的算法。• 一种高性能卷积引擎,能够运行经过训练的神经网络,原创 2021-12-19 05:52:07 · 271 阅读 · 0 评论 -
IP 公司与GPU IP
IP 公司与GPU IP1.IP公司及其处理器IP系列(DSP, GPU, AI)Synopsys来源:https://www.synopsys.com/zh-cn/designware-ip.htmlARC处理器Embedded Vision ProcessorsEV5xEV6xCadence来源:https://ip.cadence.com/ipportfolio/tensilica-ipTensilica Customizable ProcessorsXtensa LX7Al原创 2021-12-18 06:20:59 · 547 阅读 · 0 评论 -
Computer OS系统基本原理
Computer OS系统基本原理第一章 绪论(考概念)什么是OS?o 操作系统是一组控制和管理计算机软硬件资源、合理地对各类作业进行调度以及方便用户使用的程序集合。o 操作系统是位于硬件层(HAL)之上,所有其它系统软件层之下的一个系统软件,使得管理系统中的各种软件和硬件资源得以充分利用,方便用户使用计算机系统。本文参考链接:https://jason-xy.cn/2021/06/osreview/操作系统的目标方便性:o 计算机只能识别0、1o 用户熟悉的是各种语言o 命令和图原创 2021-12-17 06:34:48 · 330 阅读 · 0 评论 -
OpenCL编程详细解析与实例
OpenCL编程详细解析与实例C语言与OpenCL的编程示例比较参考链接:https://www.zhihu.com/people/wujianming_110117/posts先以图像旋转的实例,具体介绍OpenCL编程的步骤。 首先给出实现流程,然后给出实现图像旋转的C循环实现和OpenCL C kernel实现。图像旋转原理图像旋转是指把定义的图像绕某一点以逆时针或顺时针方向旋转一定的角度, 通常是指绕图像的中心以逆时针方向旋转。假设图像的左上角为(l, t), 右下角为(r, b),则图原创 2021-12-16 05:56:51 · 1252 阅读 · 0 评论 -
C语言与OpenCL的编程示例比较
C语言与OpenCL的编程示例比较OpenCL支持数据并行,任务并行编程,同时支持两种模式的混合。对于同步 OpenCL支持同一工作组内工作项的同步和命令队列中处于同一个上下文中的 命令的同步。在本文中以图像旋转的实例,具体介绍OpenCL编程的步骤。 首先给出实现流程,然后给出实现图像旋转的C循环实现和OpenCL C kernel实现。4.2 图像旋转4.2.1 图像旋转原理图像旋转是指把定义的图像绕某一点以逆时针或顺时针方向旋转一定的角度, 通常是指绕图像的中心以逆时针方向旋转。假设图像的原创 2021-12-15 10:20:06 · 2575 阅读 · 0 评论 -
自动微分延迟计算
自动微分延迟计算BP(反向传播),为什么BP不好呢?每一步都会保存了上一步中,计算出来的缓冲数据,这样在每次进行反向传播时,占用的内存比较高。自动微分的核心概念,延迟计算。先选取一个目标函数,求输出两个权重参数(W_1,W_2W1,W2)的导数。先求出1/x的导数-1/x_2−1/x2,没有计算这个-1/x_2−1/x2的值。前项与1的加法操作的导数,这个导数很显然是1。对exp这个op求导,可得到导数exp(x)。可得到JJ对W_1W1的偏导,将前面所有得到的式子,相应的op的输入代原创 2021-12-15 06:15:09 · 354 阅读 · 0 评论 -
TensorRT优化方案图例
TensorRT优化方案图例图 12. TensorRT 循环由循环边界层设置。数据流只能通过下方式离开循环环输出层. 唯一允许的后边缘是第二个输入递归层。图 13. 一个 if 条件构造抽象模型图 14. 使用控制条件执行 IIf条件输入层 放置图 15. 层执行和在 CPU 端启动的内核。图 16. 内核实际运行在 GPU 上,换句话说,显示了 CPU 端的层执行和内核启动与在 GPU 端的执行之间的相关性。图 17. 布局格式 CHW: 图像分为 高×宽矩阵,每个通道一个,矩阵原创 2021-12-14 05:50:08 · 250 阅读 · 1 评论 -
Tensorrt一些优化技术介绍
Tensorrt一些优化技术介绍Figure 1. A quantizable AveragePool layer (in blue) is fused with a DQ layer and a Q layer. All three layers are replaced by a quantized AveragePool layer (in green).Figure 2. An illustration depicting a DQ forward-propagation and Q ba原创 2021-12-13 05:47:45 · 228 阅读 · 0 评论 -
LLVM与Clang编译图例
LLVM与Clang编译图例参考链接:https://blog.csdn.net/u012874859/article/details/108530256原创 2021-12-12 06:24:43 · 344 阅读 · 0 评论 -
OpenCL产业开发链
OpenCL产业开发链OPEN STANDARD FOR PARALLEL PROGRAMMING OF HETEROGENEOUS SYSTEMSOpenCL™ (Open Computing Language,开放计算语言)是一种开放、免版税的标准,适用于超级计算机、云服务器、个人计算机、移动设备和嵌入式平台中各种加速器的跨平台并行编程。OpenCL极大地提高了众多市场类别中各种应用程序的速度和响应能力,包括专业创意工具、科学和医疗软件、视觉处理以及神经网络训练和推理。OpenCL is Wide原创 2021-12-11 06:30:11 · 275 阅读 · 0 评论 -
OpenCL框架与示例
OpenCL框架与示例下面的图简单说明了OpenCL的编程框架,图是用的GPU,其他类似;名词的概念:Platform (平台):主机加上OpenCL框架管理下的若干设备构成了这个平台,通过这个平台,应用程序可以与设备共享资源并在设备上执行kernel。实际使用中基本上一个厂商对应一个Platform,比如Intel, AMD都是这样。Device(设备):官方的解释是计算单元(Compute Units)的集合。举例来说,GPU是典型的device。Intel和AMD的多核CPU也提供OpenC原创 2021-12-10 06:17:49 · 466 阅读 · 0 评论 -
pass基础架构分析
pass基础架构分析Relay 和 TVM IR,包含一系列优化passes,可提高模型的性能指标,如平均推理,内存占用,或特定设备的功耗。有一套标准优化,及特定机器学习的优化,包括常量折叠,死代码消除,算子布局更改,算子融合,缓冲区处理和循环转换等。这些passes中的每一个,构造为一个 ir-to -ir 转换,使用在遍历期间和/或前收集的分析结果。随着 TVM 的快速发展,对管理这些pass的更系统,更有效的方法的需求,变得越来越明显。此外,管理跨 TVM 堆栈不同层(例如 Relay 和 tir原创 2021-12-09 06:21:31 · 1868 阅读 · 0 评论 -
TensorFlow XLA优化与Memory
TensorFlow XLA优化与MemoryXLA概述XLA(加速线性代数)是用于优化TensorFlow计算的线性代数的域特定编译器。结果是在服务器与移动平台上的速度,内存使用率与可移植性得到了改善。最初,大多数用户不会从XLA中看到很大的好处,通过使用即时(JIT)编译或提前编译(AOT)的XLA进行试验,针对新硬件加速器尝试XLA。XLA框架是实验性与积极的开发。尽管现有算子的语义,不太可能发生变化,但预计将增加更多的算子,涵盖重要的用例。构建XLAXLA与TensorFlow合作有几个目原创 2021-12-08 05:56:42 · 325 阅读 · 0 评论 -
CUDA编程图例
CUDA编程图例CUDA C++ Programming GuideFigure 7. Matrix Multiplication without Shared MemoryFigure 8. Matrix Multiplication with Shared MemoryFigure 20. Examples of Global Memory Accesses. Examples of Global Memory Accesses by a Warp, 4-Byte Word per Thr原创 2021-12-07 06:12:42 · 478 阅读 · 0 评论 -
写算子单元测试Writing Unit Tests
写算子单元测试Writing Unit Tests!一些单元测试示例,可在tests/python/relay/test_op_level3.py中找到,用于累积总和与乘积算子。梯度算子梯度算子对于编写Relay中的可微程序非常重要。虽然Relay的autodiff算法可区分一流的语言结构,但算子是不透明的。Relay无法查看实现,必须提供明确的差异化规则。Python和C++都可编写梯度算子,但是,示例集中在Python上,更常用。在Python中添加梯度Python梯度算子的集合可在Pyth原创 2021-12-06 05:45:55 · 372 阅读 · 0 评论 -
ONNX MLIR应用示例(含源码链接)
ONNX MLIR应用示例(含源码链接)开放式神经网络交换在MLIR中的实现 (http://onnx.ai/onnx-mlir/)。Prebuilt Containers开始使用ONNX-MLIR的一个简单方法是使用预构建的docker映像。这些映像是在主干上成功合并生成的结果。最新的图像代表主干的顶端。目前,Docker Hub中保存的amd64、ppc64le和s390x的发布和调试模式映像分别为onnxmlirczar/onnx-mlir和onnxmlirczar/onnx-mlir-dev原创 2021-12-04 06:44:14 · 615 阅读 · 0 评论 -
用动态实现扩展TVM
用动态实现扩展TVMExtending TVM with Dynamic ExecutionOutline● Motivation for Dynamism● Representing Dynamism● Executing Dynamism● EvaluationDynamic Neural Networks● Networks are exhibiting more and more dynamism○ Dynamic inputs: batch size, image size, s原创 2021-11-28 16:31:58 · 518 阅读 · 0 评论