当前位置: 首页 > news >正文

做网页设计的步骤福州百度企业网站seo

做网页设计的步骤,福州百度企业网站seo,沈阳网站建设推广平台,网站布局框架0. 前言 按照国际惯例#xff0c;首先声明#xff1a;本文只是我自己学习的理解#xff0c;虽然参考了他人的宝贵见解#xff0c;但是内容可能存在不准确的地方。如果发现文中错误#xff0c;希望批评指正#xff0c;共同进步。 本文关键词#xff1a;GPU、深度学习、GP…0. 前言 按照国际惯例首先声明本文只是我自己学习的理解虽然参考了他人的宝贵见解但是内容可能存在不准确的地方。如果发现文中错误希望批评指正共同进步。 本文关键词GPU、深度学习、GPGPU、渲染、Brook语言、流计算、硬件TL、CUDA、PyTorch、TOPS、TPU、NPU 深度学习理论的发展是一个渐进的过程从1940年代人工神经元网络的提出到1970~1980年代的反向传播的提出及兴起再到2006年后深度学习的崛起这个过程经历了多个阶段。早期的深度学习理论受限于硬件性能无法进行大规模的数据训练网络也不能做的太深。近年来随着硬件性能的不断提升尤其是图形处理器GPU的发展深度学习理论乃至整个AI领域开始得以快速发展及广泛应用。 你在最初接触深度学习时是否有以下疑问 显卡不是用来处理计算机图像的吗怎么和深度学习扯上了关系GPU为什么就比CPU处理深度学习训练过程更快为什么我的电脑明明有显卡确不能使用显卡进行深度学习的训练加速 以上疑问促使了本文的创作但是经历大量资料查阅后我发现要讲清楚这些问题涉及了很多领域的专业理论而我本人也非这些方面的专家所以只能以科普的方式带大家以及我自己一瞥这个深奥且广阔的领域。 1. 从显卡的诞生说起 1981年在IBM推出的计算机IBM 5150中搭载了世界上的首个“独立显卡”——CGAColor Graphics Adapter彩色图形适配器。CGA两种常用的图形显示模式320×200分辨率4色和640×200分辨率2色我们熟知的Pac-Man吃豆人游戏运行在CGA上的效果如下 在80~90年代IBM又相继推出了EGA (Enhanced Graphics Adapter)和VGA (Video Graphics Array)这些“显卡”可以支持更高的分辨率及更多的显示颜色。 但是无论CGA、EGA还是VGA这些“显卡”本身并不具有计算能力仅仅是将CPU计算生成的图形翻译成显示设备能识别的信号来进行显示。“显卡”完全根据CPU的指令进行相应的操作然后将结果返回给CPU纯纯是CPU的打工仔。所以这个阶段的“显卡”严格意义上来说也不能叫“显卡”叫“图形适配器”或者“图像加速卡”更合适。 2. GPU粉墨登场 随着对图像显示要求越来越高尤其是3D图像显示越来越普及仅靠CPU已经不能达到越来越复杂的图像处理要求因此需要一块真正有算力的芯片——显卡来单独处理图像。显卡在90年代经历了混战的局面当时几十家做显卡的公司各有个的开发标准各家的兼容性也非常差。这段时期的显卡典型代表是3dfx公司的Voodoo显卡。 显示标准与硬件驱动兼容多么重要啊还记得小时候下载完盗版游戏眼巴巴等着下载完了安装完了但是不能玩 真正具有划时代意义的产品是NVIDIA英伟达在1999年9月推出的GeForce 256被称为——世界上首个GPU不仅搭载了硬件TL引擎TransformingLightingTL的最大功能是处理图形的整体角度旋转以及光源阴影等三维效果。也支持微软的Direct 3D显示。从此NVIDIA也就开始了在GPU领域的领导之路。 NVIDIA这个名字起源于罗马神话的Invidia在拉丁文中Invidia有忌妒与目不转睛之意和恶意及“邪恶之眼”有相对应的关系所以英伟达的logo也就是一只眼睛。 但是由于INVIDIA这个名字已经被注册英伟达选择了去掉最开始的“I”注册了NVIDIA这个名字但是在其中文名“英伟达”中保留了“I”的发音。 随着3D图像领域尤其是游戏领域的蓬勃发展推动了各大厂商快速迭代GPU的性能GPU从昔日CPU的打工仔逐渐开始与CPU平起平坐。GPU在有了自己的算力后也承担越来越多的工作任务。 3. 渲染——让计算机图像更逼真 首先我们看一下2021年发布的《极限竞速地平线5》游戏画质 没错上面这个图片并非实拍而是游戏中的画面而游戏画面能从吃豆人进化到地平线5要归功于——渲染。而要达到计算机生成的图像能有以假乱真的效果靠CPU是无法完成的CPU硬件设计原理就不适合渲染计算这个后面会讲于是这个任务就由最初的完全由CPU负责逐步完全转移给GPU。 渲染是一门庞杂的工程学科本文也不可能逐个介绍渲染包含的各个算法这也并非本文的重点我们只需明白它的本质是将颜色分配到像素上的过程它可以根据物体的形状、材质和光源等信息计算出每个像素的颜色渲染算法主要包含以下方面 几何处理将3D模型的几何信息转化为计算机能够处理的形式包括点、线、面等基本几何元素的描述。光线追踪光线追踪是一种计算光线在场景中的路径的技术它可以模拟光线在场景中的反射、折射和散射等现象从而生成逼真的图像。纹理映射纹理映射是将纹理贴图应用到模型表面的技术它可以模拟物体表面的纹理例如木纹、石纹等。透视投影透视投影是将三维场景转换为二维图像的技术它可以模拟人的视觉感知从而生成逼真的图像。 下面我们仅以几何处理中最基本的点在三维坐标系的运动来举例假设点在三维坐标系中分别绕x, y, z三个轴旋转角度并以位移平移得到运动后的点为 旋转矩阵为 公式写到这里如果你对神经元网络的数学模型比较熟悉是不是已经发现了什么如果把旋转矩阵简写为 这个矩阵的计算过程不正式神经元网络模型的正向传播过程吗 那GPU能否也应用到神经元网络模型计算及其他主要用到矩阵运算的领域让GPU不仅应用于图形计算而变得更“通用”你不是第一个想到这个的人 4. 从GPU到GPGPU 2004年Ian Buck等人在Brook for GPUs: Stream Computing on Graphics Hardware提出随着可编程图形硬件的发展这些处理器的功能指令已经非常通用已经可以在渲染领域之外使用了通用GPU——GPGPU(General Purpose Graphic Process Unit)的概念被提出。 这篇文章主要为GPU引入了流计算编程系统——Brook。最初对GPU的编程仅能使用汇编语言在Brook之前虽然也有一些基于C语言的高级语言被提出来对GPU进行编程但是这些语言仍然把GPU仅仅作为一个图像渲染器而且限制很多不能虚拟化底层硬件的限制导致当时GPU的开发人员不仅要掌握最新的图像程序API还必须了解所使用的GPU硬件的特征及限制对编程人员提出了极高的要求。 而改进后的Brook语言可以反应不同硬件的的能力并且在传统C语言上延展出了数据并行处理(Data Parallelism)架构提升了硬件的算力密度(Arithmetic Intensity)。 这里说明下上面提到的流计算(Stream computing)包含3个主要概念 流(Streams)流可以理解为要处理的原始数据这些数据①是可以并行处理的②是动态数据③是可以即时处理的而不用等数据完全收集完之后才开始处理核(Kernel)作用于流上的算法Reduction这是核的一个机制即把多个流合并成一个流或者把一个更大的流减少成更小的流如果你了解卷积神经元网络CNN可以很容易理解核和Reduction 流计算在我们现在的生活场景应用已经非常普遍了例如视频直播、实时监控、网络购物等等…… 如果你不了解CNN可以看一下我的往期博客卷积神经元网络中常用卷积核理解及基于Pytorch的实例应用附完整代码_卷积神经网络卷积核选择-CSDN博客 文章介绍到这里我们应该明白了为什么原本用于图像处理的GPU可以通用化跨界到其他领域那为什么在深度学习中GPU可以取得比CPU更快的处理速度呢 这是由硬件底层的架构决定的CPU的设计目的是处理串行的复杂计算例如排序算法而GPU的设计目的是处理并行并行的简单运算例如渲染算法、深度学习算法。CPU和GPU的区别如下表 从处理器的核心数量上可以直观地看出差距使用目前消费级CPU和GPU来对比Intel 酷睿i9 13900K CPU24核心32线程NVIDIA GeForce系列GPU核心数如下 显然GPU成千上万的核心数更加适合深度学习数学模型的简单大量计算要求这个视频就非常直观地阐释了多核GPU在并行计算上的优势NVIDIA现场形象展示CPU和GPU工作原理上的区别_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1ry4y1y7KZ/?spm_id_fromautoNextvd_sourceb1f7ee1f8eac76793f6cadd56716bfbf 讲到这里似乎会有种GPU比CPU性能更好的错觉但是我们必须要意识到多核心的GPU仅能处理简单的运算涉及到复杂的运算还是要靠CPU两者各有所长上面的视频仅是从GPU更擅长的工作角度展现的GPU的原理 5. CUDA——奠定了NVIDIA成为寡头的基础 在2006年NVIDIA也在费尽心思地想如何打造完整的GPU生态估计老黄也是看到了上面的论文就把主要作者Ian Buck挖到了NVIDIAIan Buck现在已经是NVIDIA副总裁兼加速计算首席总监。而后NVIDIA在2007年推出了改变游戏规则的、具有划时代意义的算力平台高级编程语言——CUDACompute Unified Device Architecture。 CUDA的出现奠定了后日NVIDIA在GPU领域成为霸主的地位甚至在最近衡量一个公司的算力水平就看这个公司购买了多少个NVIDIA的A100显卡。 CUDA我们可以简单理解为NVIDIA自己专用的Brook环境CUDA支持多种高级编程语言也内部封装了很多库文件极大地便利了开发者的使用。 NVIDIA也不惜重金投入改进自己的GPU硬件让它们支持CUDA。 上面的Tesla不是马斯克的特斯拉……是英伟达自己的产品型号。 上面已经介绍过对于深度学习这类大吞吐量的并行算法GPU有着天然的优势所以现在主流的第三方库都会兼容CUDA例如PyTorch其实PyTorch大部分就是由C和CUDA编写的 安装CUDA版PyTorch后可以查看CUDA的可用性 print(torch.cuda.is_available()) 如果为True则表示CUDA可用。 至此我们回到最上面的问题为什么我的电脑明明有显卡确不能使用显卡进行深度学习的训练加速 因为必须使用支持CUDA的显卡NVIDIA的显卡才能进行GPU加速啊 而在近些年来AI的爆火也推进了NVIDIA市值爆发式地增长其他公司也翻过头来想推出类似CUDA的产品无奈在2007年就起跑的NVIDIA已经“遥遥领先”。所以说CUDA奠定了今天NVIDIA成为寡头的基础一点也不为过现在我们在NVIDIA的官网上看下它涉及的业务领域甚至可以说NVIDIA已经成为这些领域绕不开的存在了你如果不知道这个公司能猜到它原本的主营业务是造显卡的吗 这里也必须再说明下从本文的介绍来看好像感觉一切的发展都是那么的合理但是NVIDIA的成长绝非顺风顺水 且不说早期弱小的NVIDIA在与微软、ATI、AMD、INTEL等巨头的纠纷中几经被推进ICU就单论CUDA的投入几乎让NVIDIA濒临破产。老黄在后面的演讲中是这样形容的 老黄的完整版演讲需要FQhttps://m.youtube.com/watch?vmkGy1by5vxwt0s 而让NVIDIA的GPU都支持CUDA这也绝对是一个非常大胆的决定我仍记得在上大学选择电脑时当时的原则是必须要买A卡因为N卡有发热大、开机没画面的风险而这些都是因为老黄执着地改变GPU的设计让GPU兼容CUDA的早期问题 如果后期没有比特币的爆火、没有AI的爆火、没有元宇宙的爆火估计可能NVIDIA未必能支撑到今天。当然NVIDIA也反过来推进了这些领域的爆火 6. 未来不只有GPU GPU虽然相比于CPU在AI算法上更有优势但是GPU的诞生原本并不是为了AI算法只不过是因为它的通用性被人发掘而跨界应用到了AI领域。那么可否为AI相关领域的芯片进行“私人定制”呢 答案是肯定的现在已有多种专用集成电路ASIC被推出这些ASIC相比GPU有着更低的功耗、更高的算力下面仅简单介绍两种常见的ASIC——NPU和TPU。 NPU(Neural network Processing Unit神经元网络处理器) 顾名思义NPU是专门用来处理神经元网络模型的处理器其在电路架构上的设计思路是参考神经元的特性——计算和存储一体化而通过上面CPU和GPU的原理图我们可以看到计算core其实就是ALU和存储cache仍然是分离的。目前NPU已经有很广泛的应用了例如下面苹果A15芯片的NEURAL ENGINE TPU(Tensor Processing Unit, 张量处理器) TPU的诞生背景是2013年谷歌发现人们平均每天会有3min使用语音搜索功能这对谷歌的数据中心的算力要求几乎翻倍因此他们想设计一款比GPU起码多10倍算力的ASIC于是TPU在2017年被提出。 TPU的主要计算单元是256×256的矩阵乘法单元TPU的设计思路就是让这个矩阵乘法单元一直不间断地运算。一个包含65,536个8位MAC(Multiply Accumulate乘法累计运算)块的TPU可以达到92TOPS的算力是当时GPU的15~30倍而算力功耗比TOPS/W是当时GPU的30~80倍 这里再科普两个单位TOPSTera Operations Per Second和TFLOPSTera Floating Point Operations Per Second TOPS是指每秒钟可执行的整数运算次数Operations Per Second主要应用在图像处理、语音识别等。 TFLOPS则是指每秒钟可执行的浮点运算次数Floating Point Operations Per Second主要应用在科学计算、人工智能训练等需要大量浮点运算的应用领域。 区分两者的主要差异在于计算的类型两者没有固定的转换关系但是由于浮点运算比整数运算更复杂所以在相同的计算设备下TFLOPS通常会比TOPS更低。 本文主要参考文献 [1]英伟达官网World Leader in Artificial Intelligence Computing | NVIDIA [2]FletcherDunn,IanParberry,邓恩,等.3D数学基础:图形与游戏开发[M].清华大学出版社,2005. [3]Buck I , Foley T , Horn D ,et al.Brook for GPUs: Stream computing on graphics hardware[J].ACM Transactions on Graphics, 2004, 23(3):777-786.DOI:10.1145/1186562.1015800. [4]刘振林,黄永忠,王磊,等.基于Brook在GPU的应用[J].信息工程大学学报, 2008, 9(1):5.DOI:10.3969/j.issn.1671-0673.2008.01.022. [5]Jouppi N P , Young C , Patil N ,et al.In-Datacenter Performance Analysis of a Tensor Processing Unit[J].Computer architecture news, 2017, 45(2):1-12.DOI:10.1145/3079856.3080246.
http://www.dnsts.com.cn/news/233124.html

相关文章:

  • 网站建设与管理工作内容网站设计介绍
  • 如何区分官方网站和空壳网站商务网站开发开题报告
  • 电子商务网站总体框架设计学建筑的女生后悔吗
  • 网站备案号的链接南宁做网站比较好的公司有哪些
  • 我的网站百度怎么搜索不到了手机零售网站 关键词
  • 房产网站建网站贴心的合肥网站建设
  • 做电子外贸网站建设用word 做网站
  • 百度上免费创建网站安卓软件制作网站
  • 长尾关键词在网站优化中起的作用有哪些厦门网站制作维护
  • 娄底网站建设开发庞各庄网站开发公司
  • mv网站源码网站建设需要的材料
  • 成都建站优化chinacd.wordpress变身
  • 百度站长平台如何添加网站深圳做网站好的公司
  • asp网站防注入cms网站开发实验报告
  • 仙居住房和城乡建设规划局网站wordpress the author
  • 南宁网站建设哪临平房产做网站的公司
  • asp网站模板下载苏州网站开发公司兴田德润在哪儿
  • 黄山新洲建设集团网站微软做网站的软件
  • 网站换域名 百度收录wordpress默认用户名密码破解
  • 地方门户网站管理系统学校培训
  • 口碑好的网站设计制作价格个人网站模板
  • 网站一个多少钱什么是网络营销包含哪些内容
  • 北京快速建站模板vi设计内容
  • ps怎么做网站一寸的照片东莞官方网站 优帮云
  • 网络营销 网站辽宁建设工程信息网怎么业绩加分
  • j2ee网站开发教程中国招聘网
  • 阜新建设网站站酷官网
  • 哪些人不适合学计算机seo搜索引擎优化排名
  • 龙泉市做网站企业wordpress批量修改内容
  • 漯河企业网站开发青岛网站建设 大公司