Google I/O是由Google举行的网络开发者年会,讨论的焦点是用Google和开放网络技术开发网络应用。这个年会自2008年开始举办,到今年已经是举办的第9届了。 首先本港台直播们先来看看本港台直播们最熟悉的中央处理器(Central Processing Unit),简称CPU。它是一种超大规模的集成芯片,而且是一种通用芯片,也就是说,它可以用它来做很多种类的事情。本港台直播们日常使用的电脑使用的处理器基本上都是CPU,看个电影、听个音乐、跑个代码,都没啥问题。 从字面上本港台直播们也很好理解,运算逻辑器件主要执行算术运算、移位等操作,以及地址运算和转换;寄存器件主要用于保存运算中产生的数据以及指令等;控制器件则是负责对指令译码,并且发出为完成每条指令所要执行的各个操作的控制信号。 本港台直播们可以运用下面这张图来说明一条指令在CPU中执行的大致过程: CPU从程序计数器取到指令,通过指令总线将指令送至译码器,将转译后的指令交给时序发生器与操作控制器,然后运算器对数据进行计算,通过数据总线将数据存至数据缓存寄存器。 本港台直播们从CPU的结构以及执行过程可以看出,CPU遵循的是冯诺依曼架构,冯诺依曼的核心就是:存储程序,顺序执行。 从上面的描述本港台直播们可以看出,CPU就像一个有条不紊的管家,本港台直播们吩咐的事情总是一步一步来做。但是随着摩尔定律的推进以及人们对更大规模与更快处理速度的需求的增加,CPU好像执行起任务来就不那么令人满意了。于是人们就想,本港台直播们可不可以把好多个处理器放在同一块芯片上,让开奖直播们一起来做事,这样效率是不是就会高很多,这是GPU就诞生了。 通过CPU与GPU结构上的对比本港台直播们可以看出,CPU功能模块很多,能适应复杂运算环境;GPU构成则相对简单,大部分晶体管主要用于构建控制电路(比如分支预测等)和Cache,只有少部分的晶体管来完成实际的运算工作。而GPU的控制相对简单,且对Cache的需求小,所以大部分晶体管可以组成各类专用电路、多条流水线,使得GPU的计算速度有了突破性的飞跃,拥有了更强大的处理浮点运算的能力。当前最顶级的CPU只有4核或者6核,模拟出8个或者12个处理线程来进行运算,但是普通级别的GPU就包含了成百上千个处理单元,高端的甚至更多,这对于多媒体计算中大量的重复处理过程有着天生的优势。 这就好比在画一幅画的时候CPU是用一支笔一笔一笔的来画,而GPU则是多支笔对不同的位置同时进行描绘,那自然效率就是突飞猛进的。 虽然GPU是为了图像处理而生的,但是本港台直播们通过前面的介绍可以发现,它在结构上并没有专门为图像服务的部件,只是对CPU的结构进行了优化与调整,所以现在GPU不仅可以在图像处理领域大显身手,它还被用来科学计算、密码破解、数值分析,海量数据处理(排序,Map-Reduce等),金融分析等需要大规模并行计算的领域。所以GPU也可以认为是一种较通用的芯片。 FPGA这种硬件可编程的特点使得其一经推出就受到了很大的欢迎,许多ASIC(专用集成电路)就被FPGA所取代。这里需要说明一下ASIC是什么。ASIC是指依产品需求不同而定制化的特殊规格集成电路,由特定使用者要求和特定电子系统的需要而设计、制造。这里之所以特殊说明是因为本港台直播们下面介绍的TPU也算是一种ASIC。 FPGA与ASIC芯片各有缺点,FPGA一般来说比ASIC的速度要慢,而且无法完成更复杂的设计,并且会消耗更多的电能;而ASIC的生产成本很高,如果出货量较小,则采用ASIC在经济上不太实惠。但是如果某一种需求开始增大之后, ASIC的出货量开始增加,那么某一种专用集成电路的诞生也就是一种历史趋势了,本港台直播认为这也是Google生产Tensor processing unit的一个重要出发点。至此,TPU便登上历史舞台。 随着机器学习算法越来越多的应用在各个领域并表现出优越的性能,例如街景、邮件智能回复、声音搜索等,对于机器学习算法硬件上的支持也越来越成为一种需要。目前很多的机器学习以及图像处理算法大部分都跑在GPU与FPGA上面,但是通过上面的讲述本港台直播们可以知道,这两种芯片都还是一种通用性芯片,所以在效能与功耗上还是不能更紧密的适配机器学习算法,而且Google一直坚信伟大的软件将在伟大的硬件的帮助下更加大放异彩,所以Google便在想,本港台直播们可不可以做出一款专用机机器学习算法的专用芯片,TPU便诞生了。 从TPU的外观图本港台直播们可以看出,其中间突出一块很大的金属片,这便是为了可以很好地对TPU高速运算是产生大量的热进行耗散。 (责任编辑:本港台直播) |