|
研究深度学习和神经网络大多离不开英伟达的GPU,在GPU的加持下,可以更快获得模型训练的结果。而使用GPU和使用CPU的差别在哪里?为什么需要英伟达GPU?
CPU和GPU是什么
GPU(Graphics processing unit),中文全称图形处理器,我们听说的更多的CPU全称是central processing unit,中央处理器。CPU是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是计算机中负责读取指令,对指令译码并执行指令的核心部件。
GPU(图形处理器)是图形系统结构的重要元件,是连接计算机和显示终端的纽带。一个光栅显示系统离不开图形处理器(GPU)。应该说有显示系统就有图形处理器,但是早期的显卡只包含简单的存储器和帧缓冲区,它们实际上只起了一个图形的存储和传递作用,一切操作都必须由CPU来控制。这对于文本和一些简单的图形来说是足够的,但是当要处理复杂场景特别是一些真实感的三维场景,单靠这种系统是无法完成任务的。所以后来发展的显卡都有图形处理的功能。它不单单存储图形,而且能完成大部分图形功能,这样就大大减轻了CPU的负担,提高了显示能力和显示速度。
图形处理器可单独与专用电路板以及附属组件组成显卡,或单独一片芯片直接内嵌入到主板上使用。全球独立显卡领域的核心大厂商,就只有AMD和NVIDIA,二者同样是制造GPU芯片,但功能和架构又有不同,而在深度学习和神经网络等AI科学领域,NVIDIA相对领先很多,这主要因为于目前AI开发中的软件支持与底层架构,比如AI领域常说到的并行计算。
一开始,使用gpu加速的主要任务是计算机图形。因此得名图形处理单元,但近年来,出现了更多种类的并行任务。我们所看到的任务之一就是深度学习。深度学习和许多其他使用并行编程技术的科学计算任务一起,正在创造一种新的编程模型,称为GPGPU或通用GPU计算。
GPGPU
GPGPU计算通常被称为GPU计算或加速计算,现如今在GPU上预置各种任务变得越来越普遍。英伟达凭借优质的硬件和独家CUDA技术,成为全球该领域的先驱。Nvidia将通用GPU计算简称为GPU计算,英伟达很早就预见到了GPU计算,这也是CUDA在10年前诞生的原因。而又由于软件开发者和英伟达不遗余力的升级、更新迭代,CUDA才开始真正的“起飞”,而Nvidia的CUDA在人工智能领域上的成果到目前是全球最为领先的。
并行计算
并行计算是一种将特定计算分解成可以同时进行的独立的较小计算的计算方式。然后重新组合或同步计算结果,形成原来较大计算的结果。
更大的任务可以分解成的任务数量取决于特定硬件上包含的内核数量。核心是在给定处理器中实际执行计算的单元,CPU通常有4个、8个或16个核心,而GPU可通常有数千个。还有其他重要的技术规范,但是这个描述是用来驱动总体思想的。有了这些工作知识,我们可以得出结论,并行计算是使用GPU完成的,我们还可以得出结论,最适合使用GPU解决的任务是可以并行完成的任务。如果计算可以并行完成,我们可以使用并行编程方法和GPU加速计算。
神经网络高度并行
神经网络在GPU在深度学习中技术中至关重要。GPU非常适合并行计算,而神经网络是高度并行的(embarrassingly parallel)。在并行计算中,高度并行任务是指将整个任务分割成一组较小的任务以并行计算的任务。高度并行任务是那些很容易看到一组小任务彼此独立的任务。
由于神经网络高度并行。我们用神经网络做的许多计算都可以很容易地分解成更小的计算,这样小的计算集就不会相互依赖。一个这样的例子就是卷积。
卷积示例
来看一个卷积运算的例子:
卷积运算示例
这个动画展示了没有数字的卷积过程。我们在底部有一个蓝色的输入通道。在输入通道上滑动的底部有一个阴影的卷积滤波器,还有一个绿色的输出通道。- 蓝色(底部)- 输入通道 - 阴影(覆盖在蓝色上)- 3*3的卷积过滤器 - 绿色(顶部)- 输出通道。
对于蓝色输入通道上的每个位置,3x3过滤器进行计算,将蓝色输入通道的阴影部分映射到绿色输出通道的相应阴影部分。
在动画中,这些计算一个接一个地依次进行。但是,每个计算都是独立于其他计算的,这意味着任何计算都不依赖于任何其他计算的结果。
因此,所有这些独立的计算都可以在GPU上并行进行,从而产生整个输出通道。所以,卷积运算适合通过使用并行编程方法和GPU来加速。
英伟达Nvidia GPU和CUDA
Nvidia是一家设计GPU的技术公司,他们把CUDA作为一个软件平台,与他们的GPU硬件匹配,让开发者更容易构建软件,利用Nvidia GPU的并行处理能力加速计算。Nvidia GPU是支持并行计算的硬件,而CUDA是为开发者提供API的软件层。因此,你可能已经到Nvidia的GPU需要使用CUDA,而CUDA可以从Nvidia的网站上免费下载和安装。开发人员通过下载CUDA来使用随工具包而来的是专门的库,如cuDNN, CUDA深度神经网络库。
关于慧维智能 慧维智能医疗科技有限公司成立于2019年6月,专业从事智能医疗产品的研发、生产与销售。我们的核心成员,均来自全球顶尖的科研机构和世界五百强企业。慧维智能以在“人工智能”和“边缘计算”领域的自主核心技术为驱动力,致力于为全球医疗机构提供“高水准、低成本、好体验”的医疗产品与服务,最大程度地帮助医生提高诊疗水平与效率。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|