gpu在硬币挖掘的好处(gpu挖什么币)

麦斯财经 95 0

pytorch共享gpu和专用gpu有什么区别

1.GPU:计算机图显核心

1.1 GPU:计算机图形显示核心

GPU基本概念:图形处理器(graphics processing unit,缩写GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。

GPU是显卡的处理器:显卡全称显示适配卡,又称显示适配器,用于协助CPU进行图像处理,作用是将CPU送来的图像信号经过处理再输送到显示器上,由主板连接设备、监视器连接设备、处理器和内存组成,GPU即是显卡处理器。

1.2 GPU擅长大规模并发计算

GPU工作原理:GPU的工作通俗的来说就是完成3D图形的生成,将图形映射到相应的像素点上,对每个像素进行计算确定最终颜色并完成输出,一般分为顶点处理、光栅化计算、纹理贴图、像素处理、输出五个步骤。GPU采用流式并行计算模式,可对每个数据行独立的并行计算。

GPU与CPU区别:CPU基于低延时设计,由运算器(ALU)和控制器(CU),以及若干个寄存器和高速缓冲存储器组成,功能模块较多,擅长逻辑控制,串行运算。GPU基于大吞吐量设计,拥有更多的ALU用于数据处理,适合对密集数据进行并行处理,擅长大规模并发计算,因此GPU也被应用于AI训练等需要大规模并发计算场景。

1.3 GPU可分为独立GPU和集成GPU

独立GPU:独立GPU一般封装在独立的显卡电路板上,使用专用的显示存储器,独立显卡性能由GPU性能与显存带宽共同决定。一般来讲,独立GPU的性能更高,但因此系统功耗、发热量较大。

集成GPU:集成GPU常和CPU共用一个Die,共享系统内存。集成GPU的制作由CPU厂家完成,因此兼容性较强,并且功耗低、发热量小。但如果显卡运行需要占用大量内存,整个系统运行会受限,此外系统内存的频率通常比独立显卡的显存低很多,因此一般集成GPU的性能比独立GPU更低。

1.4 GPU广泛运用在图显和并行计算场景

GPU拥有单一的强大并行计算能力,所以用途往往是需要大规模并行计算的场景。早期GPU多被用于2D和3D图形的计算和处理,因为图形数据的处理往往涉及到大量的大型矩阵运算,计算量大但易于并行化。近年由于大数据、人工智能发展,GPU也常常被用于需要大量重复计算的数据挖掘领域,如机器学习,深度学习等。

GPU使用场景:GPU被广泛地运用于PC、服务器、移动等领域。其中服务器GPU可做专业图形处理、计算加速、深度学习等应用,以独立GPU为主;移动端GPU主要采用集成GPU;PC根据使用用途不同,既可以搭载独立GPU,也可以使用集成GPU。

1.5 全球GPU巨头:NVIDIA、AMD

NVIDIA(英伟达):创立于1993年,1999年发明了GPU,最初专注PC图形,后来拓展到密集计算领域,Nvidia利用GPU创建了科学计算、人工智能、数据科学、自动驾驶汽车、机器人技术、AR和VR的平台。 Nvidia是目前全球最大的独立GPU供应商,2020年营收166.8亿美元,2021Q2 Nvidia全球独立GPU市场份额达到83%。

AMD(超威半导体):成立于1969年,目前业内稀缺的可以提供高性能CPU、高性能独立显卡GPU、主板芯片组三大组件的半导体公司。2020年AMD营收97.6亿美元,其中计算和图形(包括CPU、GPU、APU等)业务营收64.3亿美元,2021Q2 AMD全球独立GPU市场份额达到17%。

2.GPU两大应用场景:图显、计算

2.1 2020全球GPU市场规模接近千亿美元

2020年全球GPU市场规模达到999.1亿美元。3D图像显示、人工智能深度学习的需求支撑GPU市场持续增长,根据Verified Market Research数据,2020年全球GPU市场规模达到999.1亿美元,预计2028年达到1581.6亿美元,CAGR为5.9%。

测算2020年中国大陆独立GPU市场规模约235亿美元。中国是全球GPU市场重要组成部分,2020年Nvidia、AMD在中国大陆收入占比分别为23.3%、23.9%,我们假设中国大陆独立GPU市场占全球23.5%,测算2020年中国大陆独立GPU市场规模约为235亿美元。

2.2 PC GPU:2020年全球出货3.94亿片

PC(个人电脑)是GPU重要应用场景,根据Jon Peddie Research(JPR)数据,2020年全球GPU出货3.94亿片,同比增长17.9%。

2.3 PC GPU:Nvidia和AMD占据独立GPU市场

Intel领导集成GPU市场。Intel(英特尔)是全球最大的CPU制造商,2021Q2占据全球77.5%的x86 CPU市场,集成GPU集成在CPU中,Intel凭借CPU市场地位,占据全球PC GPU大部分市场。根据JPR数据,2021Q2 Intel占据全球68.3%的PC GPU市场份额,Nvidia和AMD市场份额分别为15.2%、16.5%。

Nvidia和AMD占据独立GPU市场。在独立GPU领域,Nvidia具备明显的份额领先,2021Q2市占率达到83%。2006年AMD收购ATI,2010年放弃ATI品牌后推出AMD Radeon(镭龙)独立显卡系列,2021Q2 AMD独立PC GPU市场份额17%。

2.4 AI服务器与加速芯片

AI服务器:通常搭载GPU、FPGA、ASIC等加速芯片,利用CPU与加速芯片的组合可以满足高吞吐量互联的需求,为自然语言处理、计算机视觉、机器学习等AI应用场景提供强大的算力支持,支撑AI算法训练和推理过程。

AI加速芯片:由于CPU并不适合大规模并行计算,因此需要加速芯片执行AI算法,目前AI加速芯片主要包括图形处理器(graphics processing unit,GPU)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuits,ASIC)、神经拟态芯片等。

2.5 GPU是AI服务器首选加速方案

服务器是AI核心基础设施。根据IDC数据,2020年中国AI基础设施市场规模为39.3亿美元,同比增长26.8%,并将在2024年达到78.0亿美元,其中2020年服务器市场规模占AI基础设施的87%以上,承担着最为重要的角色。

互联网行业是AI服务器最大采购行业。根据IDC数据,2020年上半年,互联网占整体加速计算服务器市场近60%的份额,同比增持超过100%;政府行业和服务业分别依次位居第二位和第三位。

GPU服务器是AI加速方案首选。IDC预计2021年中国GPU服务器占比91.9%左右的市场份额,是数据中心AI加速方案首选。根据IDC数据,2019年中国GPU服务器市场规模达到20亿美元,预计2024年将达到64亿美元。

2.6 AI服务器通常配置多个GPU芯片

GPU加速服务器能够提供优秀的浮点计算能力,从容应对高实时、高并发的海量计算场景,例如深度学习、科学计算、3D动画渲染、CAE等应用场景。

3.NVIDIA:全球GPU巨头

3.1 全球GPU巨头

Nvidia成立于1993年,1999年上市,市值近10年增长超过83倍,近6年增长超过49倍。截至2021年11月5日,Nvidia总市值7438亿美元,总市值美股排名第七,是目前全球市值最大的半导体公司。(报告来源:未来智库)

3.2 三大因素推动地位提升

技术革新、场景拓展、外延并购,Nvidia引领全球GPU发展。

GPU架构:Nvidia坚持每2-3年推出一代新的GPU架构,持续保持技术领先,新的Ampere已经采用7nm工艺;应用场景:从最初图形处理到通用计算,再到AI深度学习和自动驾驶,Nvidia不断推动GPU应用场景的突破;外延并购:2000-2008年Nvidia密集收购额多家公司,涵盖显卡、图形处理、半导体等多个领域,2020年宣布计划收购ARM。

3.3 近年业绩高速增长

Nvidia产品主要分为两大类:图形处理、计算网络。下游市场包括游戏、专业可视化、数据中心、汽车四大类。

2020年Nvidia营收166.8亿美元(yoy+52.7%),净利润43.3亿美元(yoy+54.9%),其中图形处理业务营收98.3亿美元,计算网络业务营收68.4亿美元。除去2019年游戏市场需求波动造成业绩下滑外,Nvidia近5年营收、利润均保持较快增长。

得益于基于Ampere架构新GPU产品带动游戏业务高增,以及数据中心对算力需求旺盛,2021上半年Nvidia营收、净利润快速增长。

3.4 游戏是最大市场,数据中心市场增速较快

Nvidia下游市场分为四类:游戏、专业可视化、数据中心、汽车,各市场重点产品如下:

游戏:GeForce RTX/GTX系列GPU(PCs)、GeForce NOW(云游戏)、SHIELD(游戏主机);专业可视化:Quadro/RTX GPU(企业工作站);数据中心:基于GPU的计算平台和系统,包括DGX(AI服务器)、HGX(超算)、EGX(边缘计算)、AGX(自动设备);汽车:NVIDIA DRIVE计算平台,包括AGX Xavier(SoC芯片)、DRIVE AV(自动驾驶)、DRIVE IX(驾驶舱软件)、Constellation(仿真软件)。

3.5 计算业务驱动高成长

计算业务是Nvidia成长的主要驱动力:数据中心已成规模,智能汽车将进入收获期。

在数据中心市场,Nvidia拥有芯片、硬件、硬件的全栈布局。得益于全球AI应用场景的快速增加,对算力的需求飙升。是Nvidia成长最快的市场,2020年营收达到约66.96亿美元,近4年CAGR达到68.5%,远高于游戏市场的17.6%。2020年Nvidia数据中心市场营收占比已经超过40%,预计未来仍将继续提升。

在智能汽车市场, Nvidia形成了全栈式自动驾驶解决方案。AGX Xavier芯片于2018年开始出货,下一代自动驾驶芯片Orin计划用于2022年量产,算力将达到254TOPS,目前已经获得蔚来、理想、沃尔沃、奔驰等多个整车厂定点项目。我们认为2022年高阶自动驾驶汽车或将集中落地,Nvidia自动驾驶将进入收获期。

3.6 中国大陆收入贡献提升

Nvidia中国大陆收入快速增长。2020年Nvidia来自中国大陆收入38.86亿美元,同比增长42.3%,近4年CAGR达到31.4%,同期Nvidia整体营收CAGR为24.6%。

Nvidia中国大陆收入占比呈上升趋势。2020年Nvidia中国大陆收入占比达到23.3%,相比于2016年的18.9%提升4.4pct,2021上半年Nvidia中国大陆收入占比25.6%,上升趋势明显。

我们预计中国大陆占比仍将提升。图显业务层面,人均收入提升将带动PC需求增加;计算业务层面,目前中国大陆在AI算法、应用层面具有领先优势,自动驾驶场景也将率先得到释放。

4.景嘉微:国产GPU领军

4.1 国内唯一商用GPU公司

景嘉微成立于2006年,公司主营业务分为图形显控、小型专用化雷达、GPU芯片三类。其中图显、雷达产品主要面向军用市场,GPU芯片产品包括JM5400、JM7200,其中JM5400主要应用于公司图显模块中,JM7200成功拓展了民用和信创市场。2021年9月,公司第三代GPU芯片JM9成功流片,目前正在进行性能测试。

4.2 两个系列、三款GPU量产应用

景嘉微已完成两个系列、三款GPU芯片量产应用。第一代GPU产品JM5400于2014年流片成功,主要支撑军用装备,已在国产军用飞机上实现了对ATI M9、M54、M72等芯片的替代;第二代产品JM7200于2018年8月流片成功,性能与 Nvidia的GT640显卡相近。在JM7200基础上,公司又推出

关于GPU的问题!

目录:

第一章:第二代及以后的GPU工作流程简介

第二章:DirectX8和DirectX9 GPU的传统流水线

第三章:顶点和像素操作指令

第四章:传统GPU指令的执行

第五章:统一渲染架构

第六章:G80和R600的统一渲染架构实现

第七章:G80与R600效能对比

第八章:尴尬的中端--Geforce8600简析

前面4章 我将先简要介绍下DirectX8/9显卡的核心----图形处理单元GPU的工作流程和指令处理情况

从第5章开始讨论统一渲染架构、新一代DirectX10 GPU的特性,G80/Geforce8800与R600/RadeonHD2900XT的架构具体实现及其区别。最后将会对中端最受关注的Geforce8600进行相应的简单分析。

第一章:第二代及以后的GPU工作流程简介

简单(而不一定绝对科学)的说:GPU主要完成对3D图形的处理--图形的生成渲染。

GPU的图形(处理)流水线完成如下的工作:(并不一定是按照如下顺序)

顶点处理:这阶段GPU读取描述3D图形外观的顶点数据并根据顶点数据确定3D图形的形状及位置关系,建立起3D图形的骨架。在支持DX8和DX9规格的GPU中,这些工作由硬件实现的Vertex Shader(定点着色器)完成。

光栅化计算:显示器实际显示的图像是由像素组成的,我们需要将上面生成的图形上的点和线通过一定的算法转换到相应的像素点。把一个矢量图形转换为一系列像素点的过程就称为光栅化。例如,一条数学表示的斜线段,最终被转化成阶梯状的连续像素点。

纹理帖图:顶点单元生成的多边形只构成了3D物体的轮廓,而纹理映射(texture mapping)工作完成对多变形表面的帖图,通俗的说,就是将多边形的表面贴上相应的图片,从而生成“真实”的图形。TMU(Texture mapping unit)即是用来完成此项工作。

像素处理:这阶段(在对每个像素进行光栅化处理期间)GPU完成对像素的计算和处理,从而确定每个像素的最终属性。在支持DX8和DX9规格的GPU中,这些工作由硬件实现的Pixel Shader(像素着色器)完成。

最终输出:由ROP(光栅化引擎)最终完成像素的输出,1帧渲染完毕后,被送到显存帧缓冲区。

总结:GPU的工作通俗的来说就是完成3D图形的生成,将图形映射到相应的像素点上,对每个像素进行计算确定最终颜色并完成输出。

第二章:DirectX8和DirectX9 GPU的传统流水线

前面的工作流程其实已经说明了问题。本章来总结一下,承前启后。

传统的GPU功能部件我们不妨将其分为顶点单元和像素流水线两部分。

顶点单元由数个硬件实现的Vertex Shader组成。

传统的像素流水线由几组PSU(Pixel Shader Unit)+TMU+ROP组成。

于是,传统的GPU由顶点单元生成多边形,并由像素流水线负责像素渲染和输出。

对于像素流水线需要做的说明是:虽然传统的流水线被认为=1PSU+1TMU+1ROP,但这个比例不是恒定的,例如在RadeonX1000(不包括X1800)系列中被广为称道的3:1黄金架构,PSU:TMU:ROP的数量为3:1:1。一块典型的X1900显卡具有48个PSU,16个TMU和16个ROP。之所以采用这种设计方法,主要考虑到在当今的游戏中,像素指令数要远远大于纹理指令的数量。ATI凭借这个优秀的架构,成功击败了Geforce7,在DX9后期取得了3D效能上的领先。

总结:传统的GPU由顶点单元生成多边形,像素流水线渲染像素并输出,一条像素流水线包含PSU,TMU,和ROP(有的资料中不包含ROP),比例通常为1:1:1,但不固定。

第三章:顶点和像素操作指令

GPU通过执行相应的指令来完成对顶点和像素的操作。

熟悉OpenGL或Direct3D编程的人应该知道,像素通常使用RGB三原色和alpha值共4个通道(属性)来描述。而对于顶点,也通常使用XYZ和W 4个通道(属性)来描述。因而,通常执行一条顶点和像素指令需要完成4次计算,我们这里成这种指令为4D矢量指令(4维)。当然,并不是所有的指令都是4D指令,在实际处理中,还会出现大量的1D标量指令以及2D,3D指令。

总结:由于定点和像素通常用4元组表示属性,因而顶点和像素操作通常是4D矢量操作,但也存在标量操作。

第四章:传统GPU指令的执行

传统的GPU基于SIMD的架构。SIMD即Single Instruction Multiple Data,单指令多数据。

其实这很好理解,传统的VS和PS中的ALU(算术逻辑单元,通常每个VS或PS中都会有一个ALU,但这不是一定的,例如G70和R5XX有两个)都能够在一个周期内(即同时)完成对矢量4个通道的运算。比如执行一条4D指令,PS或VS中的ALU对指令对应定点和像素的4个属性数据都进行了相应的计算。这便是SIMD的由来。这种ALU我们暂且称它为4D ALU。

需要注意的是,4D SIMD架构虽然很适合处理4D指令,但遇到1D指令的时候效率便会降为原来的1/4。此时ALU 3/4的资源都被闲置。为了提高PS VS执行1D 2D 3D指令时的资源利用率,DirectX9时代的GPU通常采用1D+3D或2D+2D ALU。这便是Co-issue技术。这种ALU对4D指令的计算时仍然效能与传统的ALU相同,但当遇到1D 2D 3D指令时效率则会高不少,例如如下指令:

ADD R0.xyz , R0,R1 //此指令是将R0,R1矢量的x,y,z值相加 结果赋值给R0

ADD R3.x , R2,R3 //此指令是将R2 R3矢量的w值相加 结果赋值给R3

对于传统的4D ALU,显然需要两个周期才能完成,第一个周期ALU利用率75% ,第二个周期利用率25%。而对于1D+3D的ALU,这两条指令可以融合为一条4D指令,因而只需要一个周期便可以完成,ALU利用率100%。

但当然,即使采用co-issue,ALU利用率也不可能总达到100%,这涉及到指令并行的相关性等问题,而且,更直观的,上述两条指令显然不能被2D+2D ALU一周期完成,而且同样,两条2D指令也不能被1D+3D ALU一周期完成。传统GPU在对非4D指令的处理显然不是很灵活。

总结:传统的GPU中定点和像素处理分别由VS和PS来完成,每个VS PS单元中通常有一个4D ALU,可以在一个周期完成4D矢量操作,但这种ALU对1D 2D 3D操作效率低下,为了弥补,DX9显卡中ALU常被设置为1D+3D 2D+2D等形式。

第五章:统一渲染架构

相对于DirectX 9来说,最新的DirectX 10最大的改进在于提出了统一渲染架构,即Unified Shader。

传统的显卡GPU一直采用分离式架构,顶点处理和像素处理分别由Vertex Shader和Pixel Shader来完成,于是,当GPU核心设计完成时,PS和VS的数量便确定下来了。但是不同的游戏对于两者处理量需求是不同的,这种固定比例的PS VS设计显然不够灵活,为了解决这个问题,DirectX10规范中提出了了统一渲染架构。

不论是顶点数据还是像素数据,他们在计算上都有很多共同点,例如通常情况下,他们都是4D矢量,而且在ALU中的计算都是没有分别的浮点运算。这些为统一渲染的实现提供了可能。

在统一渲染架构中,PS单元和VS单元都被通用的US单元所取代,nVidia的实现中称其为streaming processer,即流处理器,这种US单元既可以处理顶点数据,又可以处理像素数据,因而GPU可以根据实际处理需求进行灵活的分配,这样便有效避免了传统分离式架构中VS和PS工作量不均的情况。

总结:统一渲染架构使用US(通常为SP)单元取代了传统的固定数目的VS和PS单元,US既可以完成顶点操作,又可以完成像素操作,因而可以根据游戏需要灵活分配,从而提高了资源利用率。

第六章:G80和R600的统一渲染架构实现

以下我们着重讨论G80和R600的统一着色单元而不考虑纹理单元,ROP等因素。

G80 GPU中安排了16组共128个统一标量着色器,被叫做stream processors,后面我们将其简称为SP。每个SP都包含有一个全功能的1D ALU。该ALU可以在一周期内完成乘加操作(MADD)。

也许有人已经注意到了,在前面传统GPU中VS和PS的ALU都是4D的,但在这里,每个SP中的ALU都是1D标量ALU。没错,这就是很多资料中提及的MIMD(多指令多数据)架构,G80走的是彻底的标量化路线,将ALU拆分为了最基本的1D 标量ALU,并实现了128个1D标量SP,于是,传统GPU中一个周期完成的4D矢量操作,在这种标量SP中需4个周期才能完成,或者说,1个4D操作需要4个SP并行处理完成。

这种实现的最大好处是灵活,不论是1D,2D,3D,4D指令,G80得便宜其全部将其拆成1D指令来处理。指令其实与矢量运算拆分一样。

例如一个4D矢量指令 ADD R0.xyzw , R0,R1 R0与R1矢量相加,结果赋R0

G80的编译器会将其拆分为4个1D标量运算指令并将其分派给4个SP:

ADD R0.x , R0,R1

ADD R0.y , R0,R1

ADD R0.z , R0,R1

ADD R0.w, R0,R1

综上:G80的架构可以用128X1D来描述。

R600的实现方式则与G80有很大的不同,它仍然采用SIMD架构。

在R600的核心里,共设计了4组共64个流处理器,但每个处理器中拥有1个5D ALU,其实更加准确地说,应该是5个1D ALU。因为每个流处理器中的ALU可以任意以1+1+1+1+1或1+4或2+3等方式搭配(以往的GPU往往只能是1D+3D或2D+2D)。ATI将这些ALU称作streaming processing unit,因而,ATI宣称R600拥有320个SPU。

我们考虑R600的每个流处理器,它每个周期只能执行一条指令,但是流处理器中却拥有5个1D ALU。ATI为了提高ALU利用率,采用了VLIW体系(Very Large Instruction Word)设计。将多个短指令合并成为一组长的指令交给流处理器去执行。例如,R600可以5条1D指令合并为一组5DVLIW指令。

对于下述指令:

ADD R0.xyz , R0,R1 //3D

ADD R4.x , R4,R5 //1D

ADD R2.x , R2,R3 //1D

R600也可以将其集成为一条VLIW指令在一个周期完成。

综上:R600的架构可以用64X5D的方式来描述。

总结:G80将操作彻底标量化,内置128个1D标量SP,每个SP中有一个1D ALU,每周期处理一个1D操作,对于4D矢量操作,则将其拆分为4个1D标量操作。

R600仍采用SIMD架构,拥有64个SP,每个SP中有5个1D ALU,因而通常声称R600有320个PSU,

每个SP只能处理一条指令,ATI采用VLIW体系将短指令集成为长的VLIW指令来提高资源利用率,例如5条1D标量指令可以被集成为一条VLIW指令送入SP中在一个周期完成。

第七章:G80与R600效能对比

从前一章的讨论可以看出,R600的ALU规模64X5D=320明显比G80的128X1D=128要大,但是为何在实际的测试中,基于R600的RadeonHD2900XT并没有取得对G80/Geforce8800GTX的性能优势?本章将试图从两者流处理器设计差别上来寻找答案,对于纹理单元,ROP,显存带宽则不做重点讨论。事实上,R600的显存带宽也要大于G80。

我们将从频率和执行效能两个方面来说明问题:

1、频率:G80只拥有128个1D流处理器,在规模上处于绝对劣势,于是nVidia采用了shader频率与核心频率异步的方式来提高性能。Geforce8800GTX虽然核心频率只有575MHZ,但shader频率却高达1375MHZ,即SP工作频率为核心频率的两倍以上,而R600则相对保守地采用了shader和核心同步的方式,在RadeonHD2900XT中,两者均为740MHZ。这样一来,G80的shader频率几乎是R600的两倍,于是就相当于同频率下G80的SP数加倍达到256个,与R600的320个接近了很多。在处理乘加(MADD)指令的时候,740MHZ的R600的理论峰值浮点运算速度为:740MHZ*64*5*2=473.6GFLOPS 而shader频率为1350MHZ的G80的浮点运算速度为:1350MHZ*128*1*2=345.6GFLOPS,两者的差距并不像SP规模差距那么大。

2、执行效能:G80虽说shader频率很高,但由于数量差距悬殊,即使异步也无法补回理论运算速率的差距。于是,要寻找答案,还要从两者流处理器的具体设计着手。

在G80中,每个矢量操作都会被拆分为1D标量操作来分配给不同的SP来处理,如果不考虑指令并行性等问题,G80在任何时刻,所有SP都是充分利用的。而R600则没这么幸运,因为每个流处理器只能同时处理一条指令,因而R600要将短指令合并为能充分利用SP内5DALU运算资源的VLIW指令,但是这种合并并不是总能成功。目前没有资料表明R600可以将指令拆开重组,也就是说,R600不能每时每刻都找到合适的指令拼接为5D指令来满载他的5D SP,这样的话我们假设处理纯4D指令的情况,不能拆分重组的话,R600每个SP只能处理一条4D指令,利用率80%,而对于G80,将指令拆开成1D操作,无论何时都能100%利用。而且,R600的结构对编译器的要求很高,编译器必须尽可能寻找Shader指令中的并行性,并将其拼接为合适的长指令,而G80则只需简单拆分即可。

另外还需要说明的一点是,R600中每个SP的5个1D ALU并不是全功能的,据相关资料,每组5个ALU中,只有一个能执行函数运算,浮点运算和Multipy运算,但不能进行ADD运算,其余的4各职能执行MADD运算。而G80的每个1D ALU是全功能的,这一点也在一定程度上影响了R600的效能。

总结:虽然R600的ALU规模远大于G80,但G80的SP运行频率几乎是R600的两倍,而且G80的体系架构采用完全标量化的计算,资源利用率更高,执行效能也更高,因而总体性能不落后于R600。

第八章:尴尬的中端--Geforce8600简析

在新一代中端显卡中,最早发布也是最受关注的莫过于nVidia的G84---Geforce8600系列。

但是相比其高高在上的价格,它的性能表现实在不尽如人意,很多测试中均落后于价格低于它的老一代高端显卡Geforce7900GS。本章将利用前面讨论的结论对G84核心的SP处理能力作简要地分析。

G84是G80核心的高度精简版本,SP数量从G80的128个锐减为32个,显存位宽也降为1/3--128bit。

抛开显存位宽和TMU ROP,我们着重看SP,G84的SP频率与核心频率也不相同,例如8600GT,核心频率只有540MHZ,shader频率却高达1242MHZ,即核心频率的两倍多,我们粗略按两倍记,则G84核心相当于核心shader同步的64(个1D标量) SP,而传统的VS和PS中ALU是4D的,于是可以说G84的计算能力相当于传统VS和PS总数为64/4=16的显卡,粗略比较,它与Geforce7600(PS+VS=17)的计算能力相近。但当然,事实这样比较是有问题的,因为在G7X中,每个PS中有两个4D ALU,因而7600的运算能力高于传统PS+VS=17的显卡。下面的计算就说明了问题:(MADD操作)

对于7600GT ,VS为4D+1D PS为4D+4D 核心频率560MHZ 理论峰值浮点运算速度:

560MHZ*(12*(4+4)+5*(1+4))*2=135.52GFLOPS

而对于8600GT:1242MHZ*32*1*2=79.4GFLOPS

由此可见,8600GT的峰值运算速度甚至远低于上代的7600GT,更不用跟7900GS相比了。但是,实际情况下,迫于传统架构所限,G7X满载的情况基本不可能出现,G7X的实际运算速率要远低于理论值,而对于G8X架构,执行效率则高很多,实际运算速率会更加接近理论极限。而且支持SM4.0的G8X寄存器数目也要远多于G7X,众多效率优势,使得Geforce8600GT仅凭借少量的SP就足以击败上代中端7600GT。

但是作为DX10显卡,仅仅击败7600GT显然不是最终目标,仅32SP的它在计算量要求空前之高的DX10游戏中表现极差,根本不能满足玩家要求。

总结:8600GT性能上取代7600GT的目标凭借着高效的统一渲染架构总算勉强完成,但过少的SP数量使得其显然难以击败上代高端,更不用说流畅运行DX10游戏了,而高高在上的价位更使其处境不利,归根到底,nVidia对G84 SP数量的吝啬以及过高的价格定位造就了Geforce8600的尴尬,因此,就目前的情况来看,选用8600系列显然不如Geforce7900和RadeonX1950GT来的划算。

做深度学习,需要配置专门的GPU服务器吗?

深度学习是需要配置专门的GPU服务器的:

深度学习的电脑配置要求:

1、数据存储要求

在一些深度学习案例中,数据存储会成为明显的瓶颈。做深度学习首先需要一个好的存储系统,将历史资料保存起来。

主要任务:历史数据存储,如:文字、图像、声音、视频、数据库等。

数据容量:提供足够高的存储能力。

读写带宽:多硬盘并行读写架构提高数据读写带宽。

接口:高带宽,同时延迟低。

传统解决方式:专门的存储服务器,借助万兆端口访问。

缺点:带宽不高,对深度学习的数据读取过程时间长(延迟大,两台机器之间数据交换),成本还巨高。

2、CPU要求

当你在GPU上跑深度网络时,CPU进行的计算很少,但是CPU仍然需要处理以下事情:

(1)数据从存储系统调入到内存的解压计算。

(2)GPU计算前的数据预处理。

(3)在代码中写入并读取变量,执行指令如函数调用,创建小批量数据,启动到GPU的数据传输。

(4)GPU多卡并行计算前,每个核负责一块卡的所需要的数据并行切分处理和控制。

(5)增值几个变量、评估几个布尔表达式、在GPU或在编程里面调用几个函数——所有这些会取决于CPU核的频率,此时唯有提升CPU频率。

传统解决方式:CPU规格很随意,核数和频率没有任何要求。

3、GPU要求

如果你正在构建或升级你的深度学习系统,你最关心的应该也是GPU。GPU正是深度学习应用的核心要素——计算性能提升上,收获巨大。

主要任务:承担深度学习的数据建模计算、运行复杂算法。

传统架构:提供1~8块GPU。

4、内存要求

至少要和你的GPU显存存大小相同的内存。当然你也能用更小的内存工作,但是,你或许需要一步步转移数据。总而言之,如果钱够而且需要做很多预处理,就不必在内存瓶颈上兜转,浪费时间。

主要任务:存放预处理的数据,待GPU读取处理,中间结果存放。

深度学习需要强大的电脑算力,因此对电脑的硬件配置自然是超高的,那么现在普通的高算力电脑需要高配置硬件。

为什么显卡的型号是rx590,但是gpu1显示的是rx480?

如果你没有插两张显卡的话那么很明显了。

你的RX590不是RX590,是假货RX590。是RX480刷BIOS刷成RX590的(一般RX480会刷成RX580,这两个驱动其实差不多但是后者的驱动会给显卡更高的核心和显存频率来提升性能)

从CPU、GPU到TPU

我们知道,任何一台计算机,也包括智能手机,游戏机等有计算能力的设备,都有一个计算的核心芯片,叫做CPU(Central Processing Unit),即中央处理器,它负责所有的计算,并且控制计算机的全部工作。

CPU的性能从上个世纪60年代中期开始,几乎按照每18个月翻一番的速度在进步,从1965年至今,差不多翻了34次了,也就是说计算速度提高了160亿倍。如果再把这个进步分解一下,又可以分成两个维度,一个是主频的提高,另一个是集成电路芯片密度(称为集成度)的提高。

主频提高后,本来一秒钟算10万个周期,现在可以算30亿个,增加了几万倍。密度提高后,本来几个周期完成一次计算任务,现在可以流水作业、分工合作,一个周期完成好几次计算。两者的加速是叠加的,使得今天计算机的速度变得飞快。

但是,CPU的主频不可能无限制提高,因为光速是一个绝对的瓶颈,今天计算机CPU内部,电子运动的速度已经接近光速所给的极限了,几乎没有了再提高的可能性,事实上从10年前开始,这条路就走不通了。

那么怎么办呢?英特尔公司的办法是,将计算机CPU的集成度进一步提高,最早一个集成电路中只有几千个晶体管,今天最多的有60亿个,这样计算可以并行开展,这也是为什么我们计算机和手机CPU有什么四核、八核之说。

那么接下来,为什么不能做成16核、32核甚至100核呢?因为以今天的工艺,做到那么多核处理器的体积要大得不得了,光是散热问题就没法解决。面对这个问题怎么办呢?英特尔总的态度是,没法解决,你们多买我一些处理器,多建造一些服务器,再把计算中心修得大一点就好了。且不说这个法子灵不灵,在很多场合也没有条件这么做,比如在无人驾驶汽车中,总不能扛着一个机柜上路吧。

我们知道,有主动性的人,总是想方设法寻找更好的解决方法。英伟达的创始人黄仁勋就是这样的人。黄仁勋和他在英伟达的同事就想,CPU的计算速度之所以不够快,是因为它被设计成能够适应所有的计算了,里面很多晶体管都用来搭建控制电路了。

另外,因为计算太复杂,因此处理器本身设计得太复杂。而在计算机里面,有一种计算相对单一,就是控制显示器的图形计算,于是英伟达就为这一类计算专门设计了一种处理器,叫做GPU,即图形处理器。

当然,在英伟达之前,做图形工作站的太阳公司和SGI公司也设计出类似的产品,但是不通用。GPU比CPU的好处有两个:

第一,控制电路简单了,因此更多的晶体管用于了计算,而不是控制,这样本来10亿个晶体管可以搭建四个内核,还有希望搭建八个、十六个甚至更多。

第二,将单个儿单个儿的计算,变成一批一批的计算。在现实生活中,大部分的计算每次都是在两个数之间进行的,比如A+B=C,它是一个运算指令(“+”)带上两个数字(“A”和“B”),下一次做X-Y,是另一个运算指令(“-”)带上另外两个数字(“X”和“Y”)。因此计算机处理器实际上是按照一个指令通道(流)对应一个数据通道设计的(被称为SISD)。打个不很恰当的比方,一般的计算就如同你蹲在地上一个个地捡豆子。

而图形计算是整个一条线(在计算机科学里被称为向量)按照同一种操作一口气算完,比如A1+B1=C1,A2+B2=C2,……,最后A1000+B1000=C1000,对于这些计算来讲,指令都是一样的,只是使用不同的数据而已,因此它可以设计出非常多的功能简单的计算核心,然后对一条指令开发很多数据通道(即所谓的SIMD)即可。

这就相当于用一个吸尘器在地上吸豆子,你走过一条线,就吸起一大堆,效率就高多了。对此,英伟达提出一种所谓的“统一计算架构”(CUDA)的概念,就是很多很多核都做同一件事情,并且在此基础上设计出图形处理器GPU。

有了GPU,很多重复一致的计算就可以并行了。GPU最早是针对图形计算设计的,但是后来英伟达发现机器学习的算法也可以用这种方式实现,于是到了2016年,英伟达又针对机器学习的特点,设计了针对机器学习的GPU,它最新的P40处理器内部有多达3000个所谓“统一计算架构”的内核。

虽然每一个能力都比不上英特尔四核处理器中的一个内核,但是P40等GPU的内核数量非常多,因此做人工智能计算就非常快。今天特斯拉搞的辅助驾驶,一片这样的处理器就能解决所有的问题。在去年对阵李世石的AlphaGo中,就是用了176个英伟达的GPU,承担了主要的计算功能。

但是毕竟机器学习中的向量计算和通用的向量计算还是有所不同,能否让计算的内核功能再专一一点,只做和一种非常特定的机器学习算法(即Google的人工神经网络算法)相关的向量计算呢?

于是,Google提出了一种张量(Tensor)计算的概念。所谓张量,它原本是一个数学概念,表示各种向量或者数值之间的关系。比如你的两张照片是两个不同的向量,它们之间的一些相似性就是一个张量。人工神经网络的算法可以看成是张量的计算,至于为什么,大家不必细究,记住这个结论就可以了。

接下来,Google就在英伟达等公司GPU的基础上,进一步让计算变得专注,设计了一种仅仅针对特定张量计算的处理器,叫做TPU,其中T就代表张量(Tensor)。Google宣称,一个TPU对AlphaGo这样的任务,效率抵得上15-30个英伟达的GPU,这也就是为什么这一次Google讲新版的AlphaGo在硬件上瘦身了的原因。

去年战胜李世石的AlphaGo的耗电量是人脑的300倍,如今的AlphaGo用的机器少了很多,至少少了一个数量级,也就是说耗电量从人脑的300倍下降到30倍以下,这个进步速度还是很惊人的。

当然,英伟达表示不服气,说你Google是在拿苹果和橘子比,而用我的测试处理器性能的程序来评测,我的P40可比你的TPU快多了。其实TPU和GPU谁更好,完全要看做什么事情了。

从CPU到GPU,再到TPU,效率提升的根本原因在于两个字——专注,相比之下,我们手机和电脑的CPU是非常“不专注”的。

在社会生活中,情况和计算机处理器其实很相似。工业革命开始后,英国工厂主把分工做得特别细,于是效率大增。亚当·斯密在《国富论》中讲,即使是制作缝衣服针这件事,当分工很细致后,一个工人一天能生产上千根,如果一个工人做所有的工序,一天恐怕连10根都做不了。因此,英国工业革命后,就把整个欧洲的加工业碾压了。这其实就好比TPU和CPU的关系。

但是,TPU的使用有一个前提,就是这种芯片的市场至少要有上百万片,否则就不值得做,因为它做一个样片的成本就得上百万美元,而设计成本则是上千万。如果市场需求量只有几万片,还不如用很多CPU来工作呢。这就如同制作缝衣服针,一年仅欧洲恐怕要用到上亿根,才值得做社会分工。如果只用三五十根,还不如让几个工人慢慢磨呢!因此,分工和专注的前提都是市场规模足够大。

最后讲一下人的技能,什么时候需要专而精,什么时候需要广博,其实没有一定之规,但是一个很好的判断标准就是市场是否大到需要非常专而精。

gpu在硬币挖掘的好处(gpu挖什么币)-第1张图片

上述文章内容就是麦斯财经整理的gpu在硬币挖掘的好处和gpu挖什么币的相关解答,希望能够帮助到大家;如果大家还想了解更多财经资讯知识,记得收藏关注本站。

标签: gpu在硬币挖掘的好处

抱歉,评论功能暂时关闭!

微信号已复制,请打开微信添加咨询详情!