安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

谷歌董事会主席JohnHennessyAI技术发展放缓,我们

11月15日 风雨峰投稿
  50年前,英特尔创始人之一戈登摩尔提出了摩尔定律:集成电路上可容纳的晶体管数目,约每隔24个月便会增加一倍。但近两年,关于摩尔定律是否失效的争论不断。
  与摩尔定律(Mooreslaw)相伴而生的是登纳德缩放定律(Dennardscaling),即随着晶体管密度的增加,每个晶体管的功耗会下降,因此每平方毫米硅的功耗几乎是恒定的。但登纳德缩放定律在2007年开始显著放缓,到2012年几乎失效。
  也就是说,半导体技术的更新迭代显然已经无法带来飞跃的性能增长,即使多核设计也没有显著改善能效方面的问题。这种情况下,能否找到更加高效的利用方法?未来半导体行业又会出现哪些变化趋势?
  围绕这一问题,在钛媒体和国家新媒体产业基地联合主办的2021TEDGE全球创新大会上,Google母公司Alphabet董事会主席、2017年美国图灵奖获得者、斯坦福大学原校长JohnHennessy发表了题为《深度学习和半导体技术领域的趋势和挑战》演讲。
  在他看来,实现更高的性能改进需要新的架构方法,从而更有效地使用集成电路功能。具体的解决方案有三个可能的方向:
  1、以软件为中心的机制。即着眼于提高软件的效率,以便更有效地利用硬件;
  2、以硬件为中心的方法。也称为特定领域架构或特定领域加速器;
  3、以上两类的部分结合。开发出与这些特定架构相匹配的语言,让人们更有效地开发应用程序。
  在这样的变化之下,JohnHennessy认为,未来通用处理器将不是驱动行业发展的主力,能够与软件快速联动的特定领域处理器将会逐渐发挥重大作用。因此,接下来或许会看到一个更垂直的行业,会看到拥有深度学习和机器学习模型的开发者与操作系统和编译器的开发者之间更垂直的整合,使他们的程序能够有效运行、有效地训练以及进入实际使用。
  以下为JohnHennessy演讲实录,经钛媒体编辑整理:
  HelloImJohnHennessy,professorofcomputerscienceandelectricalengineeringatStanfordUniversity,andcowinneroftheTuringAwardin2017。
  大家好,我是约翰轩尼诗,斯坦福大学计算机科学与电气工程教授,也是2017年图灵奖共同获得者。
  Itsmypleasuretoparticipateinthe2021TEDGEconference。
  很高兴能参加2021年的TEDGE大会。
  TodayImgoingtotalktoyouaboutthetrendsandchallengesindeeplearningandsemiconductortechnologies,andhowthesetwotechnologieswantacriticalbuildingblockforcomputingandtheotherincrediblenewbreakthroughsinhowweusecomputersareinteracting,conflictingandhowtheymightgoforward。
  今天我想谈谈深度学习和半导体技术领域的趋势和挑战、这两种技术需要的关键突破、以及计算机领域的其他重大突破和发展方向。
  AIhasbeenaroundforroughly60yearsandformanyyearsitcontinuestomakeprogressbutataslowrate,muchlowerthanmanyoftheearlyprophetsofAIhadpredicted。
  人工智能技术已经存在大约60年,多年来持续发展。但是人工智能技术的发展开始放缓,发展速度已远低许多早期的预测。
  AndthentherewasadramaticbreakthrougharounddeeplearningforseveralsmallexamplesbutcertainlyAlphaGodefeatingtheworld’sgochampionatleasttenyearsbeforeitwasexpectedwasadramaticbreakthrough。Itreliedondeeplearningtechnologies,anditexhibitedwhatevenprofessionalgoplayerswouldsaywascreativeplay。
  在深度学习上我们实现了重大突破。最出名的例子应该就是AlphaGo打败了围棋世界冠军,这个成果要比预期早了至少十年。AlphaGo使用的就是深度学习技术,甚至连专业人类棋手也夸赞AlphaGo的棋艺颇具创意。
  Thatwasthebeginningofaworldchange。
  这是巨变的开端。
  Todayweveseenmanyotherdeeplearningbreakthroughswheredeeplearningisbeingusedforcomplexproblems,obviouslycrucialforimagerecognitionwhichenablesselfdrivingcars,becomingmoreandmoreusefulinmedicaldiagnosis,forexample,lookingatimagesofskintotellwhetherornotalesioniscancerousornot,andapplicationsinnaturallanguageparticularlyaroundmachinetranslation。
  今天,深度学习也在其他领域取得重大突破,被应用于解决复杂的问题。其中最明显的自然是图像识别技术,它让自动驾驶技术成为可能。图像识别技术在医学诊断中也变得越来越有用,可通过查看皮肤图像判断是否存在癌变。除此之外,还有在自然语言处理中的应用,尤其是在机器翻译方面颇具成果。
  NowforLatinbasedlanguagebasicallybeingasgoodasprofessionaltranslatorsandimprovingconstantlyforChinesetoEnglish,amuchmorechallengingtranslationproblembutweareseeingevenasignificantprogress。
  目前,拉丁语系的机器翻译基本上能做到和专业翻译人员相似的质量。在更具挑战的汉英翻译方面上,机器翻译也有不断改进,我们已经能看到显着的进步。
  MostrecentlyweveseenAlphaFold2,adeepmindsapproachtousingdeeplearningforproteinfolding,whichadvancedthefieldbyatleastadecadeintermsofwhatisdoableintermsofapplyingthistechnologytobiologyandgoingtodramaticallychangethewaywemakenewdrugdiscoveryinthefuture。
  近期我们也有AlphaFold2,一种使用深度学习进行蛋白质结构预测的应用,它将深度学习与生物学进行结合,让该类型的应用进步了至少十年,将极大程度地改变药物研发的方式。
  Whatdrovethisincrediblebreakthroughindeeplearning?Clearlythetechnologyconceptshavebeenaroundforawhileandinfactmanycaseshavebeendiscardedearlier。
  是什么让深度学习取得了以上突破?显然,这些技术概念已经存在一段时间了,在某种程度上也曾被抛弃过。
  Sowhywasitabletomakethisbreakthroughnow?
  那么为什么现在我们能够取得突破呢?
  Firstofall,wehadmassiveamountsofdatafortraining。TheInternetisatreasuretroveofdatathatcanbeusedfortraining。ImageNetwasacriticaltoolfortrainingimagerecognition。Today,closeto100,000objectsareonImageNetandmorethan1000imagesperobject,enoughtotrainimagerecognitionsystemsreallywell。Sothatwasthekey。
  首先是我们有了大量的数据用于训练AI。互联网是数据的宝库。例如ImageNet,就是训练图像识别的重要工具。现在ImageNet上有近100,000种物体的图像,每种物体有超过1000张图像,这足以让我们很好地训练图像识别系统。这是重要变化之一。
  ObviouslywehavelotsofotherdatawereusinghereforwhetheritsproteinfoldingormedicaldiagnosisornaturallanguagewererelyingonthedatathatsavailableontheInternetthatsbeenaccuratelylabeledtobeusedfortraining。
  我们当然也使用了其他大量的数据,无论是蛋白质结构、医学诊断还是自然语言处理方面,我们都依赖互联网上的数据。当然,这些数据需要被准确标记才能用于训练。
  Second,wewereabletomarshalmassofcomputationalresourcesprimarilythroughlargedatacentersandcloudbasedcomputing。Trainingtakeshoursandhoursusingthousandsofspecializedprocessors。Wesimplydidnthavethiscapabilityearlier。Sothatwascrucialtosolvingthetrainingproblem。
  第二,大型数据中心和云计算给我们带来了大量的运算资源。使用数千个专用处理器进行人工智能训练只需要数小时就能完成,我们之前根本没有这种能力。因此,算力也是一个重要因素。
  Iwanttoemphasizethattrainingisthecomputationalintensiveproblemhere。Inferencesaremuchsimplerbycomparisonandhereyouseetherateofgrowthofperformancedemandinpetaflopsdaysneededtotrainaseriesofmodelshere。IfyoulookattrainingAlphaZeroforexamplerequires1000petaflopsdays,roughlyaweekonthelargestcomputersavailableintheworld。
  我想强调的是,人工智能训练带来的问题是密集的算力需求,程序推理变得简单得多。这里展示的是训练人工智能模型的性能需求增长率。以训练AlphaZero为例,它需要1000pfsday,也就是说用世界上最大规模的计算机来训练要用上一周。
  ThisspeedhasbeengrowingactuallyfasterthanMooreslaw。Sothedemandisgoingupfasterthanwhatsemiconductorseverproducedevenintheverybestera。Weveseen300,000timesincreaseincomputefromtrainingsimplemodelslikeAlexNetuptoAlphaGoZeroandnewmodelslikeGPT3hadbillionsofparametersthatneedtobeset。Sothetrainingintheamountofdatatheyhavetolookatistrulymassive。Andthatswheretherealchallengecomes。
  这个增长率实际上比摩尔定律还要快。因此,即使在半导体行业最鼎盛的时代,需求的增长速度也比半导体生产的要快。从训练AlexNet这样的简单模型到AlphaGoZero,以及GPT3等新模型,有数十亿个参数需要进行设定,算力已经增加了300,000倍。这里涉及到的数据量是真的非常庞大,也是我们需要克服的挑战。
  Mooreslaw,theversionthatGordonMooregavein1975,predictedthatsemiconductordensitywouldcontinuetogrowquicklyandbasicallydoubleeverytwoyearsbutwebegantopergefromthat。Reallyquicklypergebeganinaround2000andthenthespreadisgrowingevenwider。AsGordonsaidinthe50thanniversaryofthefirstprediction:noexponentialisforever。Mooreslawisnotatheoremorsomethingthatsdefinitelymustholdtrue。Itsanambitionwhichtheindustrywasabletofocusonandkeepingtag。Ifyoulookatthiscurve,youllnoticethatforroughly50yearswedroponlyafactorof15whilegainingafactorofmorethanalmost10,000。
  摩尔定律,即戈登摩尔在1975年给出的版本,预测半导体密度将继续快速增长,基本上每两年翻一番,但我们开始偏离这一增长速度。偏离在2000年左右出现,并逐步扩大。戈登在预测后的五十年后曾说道:没有任何的物理事物可以持续成倍改变。当然,摩尔定律不是定理或必须成立的真理,它是半导体行业的一个目标。仔细观察这条曲线,你会注意到在大约50年中,我们仅偏离了约15倍,但总共增长了近10,000倍。
  Sowevelargelybeenabletokeeponthiscurvebutwebeganpergingandwhenyoufactorinincreasingcostofnewfabandnewtechnologiesandyouseethiscurvewhenitsconvertedtopricepertransistornotdroppingnearlyasfastasitoncefell。
  所以我们基本上能够维持在这条曲线上,但我们确实开始跟不上了。如果你考虑到新晶圆厂和新技术的成本增加,当它转换为每个晶体管的价格时,你会看到这条曲线的下降速度不像曾经下降的那么快。
  Wealsohavefacedanotherproblem,whichistheendofsocalleddennardscaling。DennardscalingisanobservationledbyRobertDennard,theinventorofDRAMthatisubiquitousincomputingtechnology。Heobservesthatasdimensionsshrunksowouldthevoltageandotherassonanceforexample。Andthatwouldresultinnearlyconstantpowerpermillimeterofsilicon。Thatmeantbecauseoftheamountoftransistorsthatwereineachmillimeterweregoingupdramaticallyfromonegenerationtothenext,thatpowerpercomputationwasactuallydroppingquitequickly。Thatreallycametoahaltaround2007andyouseethisredcurbwhichwasgoingupslowlyatthebeginningbetween2000and2007reallybegantotakeoff。Thatmeantthatpowerwasreallythekeyissueandfiguringouthowtogetenergyefficiencywouldbecomemoreandmoreimportantasthesetechnologieswentforward。
  我们还面临另一个问题,即所谓的登纳德缩放定律。登纳德缩放定律是由罗伯特登纳德领导的一项观察实验,他是DRAM的发明人。据他的观察,随着尺寸缩小,电压和其他共振也会缩小,这将导致每毫米硅的功率几乎恒定。这意味着由于每一毫米中的晶体管数量从一代到下一代急剧增加,每个计算的功率实际上下降得非常快。这在2007年左右最为明显,在2000年到2007年间开始缓慢上升的功耗开始激增。这意味着功耗确实是关键问题,随着这些技术的发展,弄清楚如何获得更高的能源效率将变得越来越重要。
  Combineresultsofthisisthatweveseenalevelingoffofunitprocessorperformance,singlecoreperformance,aftergoingthrougharapidgrowthintheearlyperiodoftheindustryofroughly25ayearandthenaremarkableperiodwiththeintroductionofRISCtechnologies,instructionallevelparallelism,ofover50ayearandthenaslowerperiodwhichfocusedverymuchonmulticoreandbuildingonthesetechnologies。
  在经历了行业早期每年大约25的增长之后,随着RISC技术的引入和指令级并行技术的出现,开始有每年超过50的性能增长。之后我们就迎来了多核时代,专注于在现有技术上进行深耕。
  Inthelasttwoyears,onlylessthan5improvementinperformanceperyear。Evenifyouweretolookatmulticoredesignswiththeinefficienciesthatcomeaboutyouseethatthatdoesntsignificantlyimprovethingsacrossthis。
  在过去的两年中,每年的性能提升不到5,即使多核设计也没有显着改善能效方面的问题。
  Andindeedweareintheweareintheeraofdarksiliconwheremulticoreoftenslowdownorshutoffacoretopreventoverheatingandthatoverheatingcomesfrompowerconsumption。
  事实上,我们正处于半导体寒冬。多核处理器还是会因为担心过热而限制自身的性能。而过热的问题就来自功耗。
  Sowhatarewegoingtodo?Wereinthisdilemmaherewherewevegotanewtechnologydeeplearningwhichseemsabletodoproblemsthatweneverthoughtwecoulddoquiteeffectively。ButitrequiresmassiveamountsofcomputingpowertogoforwardandatthesametimeMooreslawontheendofDennardScalingiscreatingasqueezeontheabilityoftheindustrytodowhatitreliesonformanyyears,namelyjustgetthenextgenerationofsemiconductortechnologyeverythinggetsfaster。
  那么我们能做什么呢?我们在这里陷入了两难境地,我们拥有一项新技术,深度学习,它似乎能够高效地解决很多问题,但同时它需要大量的算力才能进步。同时,一边我们有着登纳德缩放定律,一边有着摩尔定律,我们再也不能期待半导体技术的更新迭代能给我们带来飞跃的性能增长。
  Sowehavetothinkaboutanewsolution。Therearethreepossibledirectionstogo。
  因此,我们必须考虑新的解决方案。这里有三个可能的方向。
  Softwarecentricmechanismswherewelookatimprovingtheefficiencyofoursoftwaresoitmakesmoreefficientuseofthehardware,inparticularthemovetoscriptinglanguagessuchaspythonforexamplebetterdynamicallytyped。Theymakeprogrammingveryeasybuttheyrenotterriblyefficientasyouwillseeinjustasecond。
  以软件为中心的机制。我们着眼于提高软件的效率,以便更有效地利用硬件,特别是脚本语言,例如python。这些语言让编程变得非常简单,但它们的效率并不高,接下来我会详细解释。
  Hardwarecentricapproaches。Canwechangethewaywethinkaboutthearchitectureofthesemachinestomakethemmuchmoreefficient?Thisapproachiscalleddomainspecificarchitecturesordomainspecificaccelerator。Theideaistojustdoafewtasksbuttotunethehardwaretodothosetasksextremelywell。Wevealreadyseenexamplesofthisingraphicsforexampleormodemthatsinsideyourcellphone。Thosearespecialpurposearchitecturesthatuseintensivecomputationaltechniquesbutarenotgeneralpurpose。Theyarenotprogrammedforarbitrarythings。Theyarenotdesignedtodoarangeofgraphicsoperationsortheoperationisrequiredbymodem。
  以硬件为中心的方法。我们能否改变我们对硬件架构的设计,使它们更加高效?这种方法称为特定领域架构或特定领域加速器。这里的设计思路是让硬件做特定的任务,然后优化要非常好。我们已经在图形处理或手机内的调制解调器中看到了这样的例子。这些使用的是密集计算技术,不是用于通用运算的,这也意味着它们不是设计来做各种各样的运算,它们旨在进行图形操作的安排或调制解调器需要的运算。
  Andthenofcoursesomecombinationsofthese。Canwecomeupwithlanguageswhichmatchtothesenewdomainspecificarchitecture?Domainspecificlanguageswhichimprovetheefficiencyandletuscodearangeofapplicationsveryeffectively。
  最后是以上两类的一些结合。我们是否能开发出与这些特定架构相匹配的语言?特定领域语言可以提高效率,让我们非常有效地开发应用程序。
  ThisisafascinatingslidefromapaperthatwasdonebyCharlesLeisersonandhiscolleaguesatMITandpublishonSciencecalledTheresplentyofroomattheTop。
  这是查理雷瑟森和他在麻省理工学院的同事完成发表在《科学》杂志上的一篇论文内容。论文名为顶端有足够的空间。
  Whattheywanttodoobserveisthatsoftwareefficiencyandtheinefficiencyofmatchingsoftwaretohardwaremeansthatwehavelotsofopportunitytoimproveperformance。Theytookadmittedlyaverysimpleprogram,matrixmultiply,writteninitiallyinpythonandranitonan18coreIntelprocessor。AndsimplybyrewritingthecodefrompythontoCtheygotafactorof47inimprovement。Thenintroducingparallelloopsgavethemanotherfactorofapproximatelyeight。
  他们想要观察的是软件效率,以及软件与硬件匹配过程中带来的低效率,这也意味着我们有很多提高效率的地方。他们在18核英特尔处理器上运行了一个用Python编写的简单程序。把代码从Python重写为C语言之后,他们就得到了47倍的效率改进。引入并行循环后,又有了大约8倍的改进。
  Thenintroducingmemoryoptimizationsifyourefamiliarwithlargescalemetricsmultipliedbydoingitinblockedfashionyoucandramaticallyimprovetheabilitytousethecasheaseffectivelyandtherebytheygotanotherfactoralittleunder20fromthatabout15。AndthenfinallyusingthevectorinstructionsinsidetheIntelprocessortheywereabletogainanotherfactorof10。Overallthisfinalprogramrunsmorethan62,000timesfasterthantheinitialpythonprogram。
  引入内存优化后可以显着提高缓存的使用效率,然后就又能获得1520倍的效率提高。然后最后使用英特尔处理器内部的向量指令,又能够获得10倍的改进。总体而言,这个最终程序的运行速度比最初的Python程序快62,000多倍。
  Nowthisisnottosaythatyouwouldgetthisforthelargerscaleprogramsorallkindsofenvironmentsbutitsanexampleofhowmuchinefficiencyisinatleastforonesimpleapplication。OfcoursenotmanyperformancesensitivethingsarewritteninPythonbuteventheimprovementfromCtothefullyparallelversionofCthatusesSIMDinstructionsissimilartowhatyouwouldgetifyouusethedomainspecificprocessor。Itissignificantjustinitsonwright。Thatsnearlyafactorof100,morethan100,itsalmost150。
  当然,这并不是说在更大规模的程序或所有环境下我们都可以取得这样的提升,但它是一个很好的例子,至少能说明一个简单的应用程序也有效率改进空间。当然,没有多少性能敏感的程序是用Python写的。但从完全并行、使用SIMD指令的C语言版本程序,它能获得的效率提升类似于特定领域处理器。这已经是很大的性能提升了,这几乎是100的因数,超过100,几乎是150。
  Sothereslotsofopportunitieshereandthatsthekeypointbehindusslideofanobservation。
  所以提升空间是很多的,这个研究的发现就是如此。
  Sowhatarethesedomainspecificarchitecture?Theirarchitectureistoachievehigherefficiencybytellingthearchitecturethecharacteristicsofthedomain。
  那么特定领域架构是什么呢?这些架构能让架构掌握特定领域的特征来实现更高的效率。
  Werenottryingtodojustoneapplicationbutweretryingtodoadomainofapplicationslikedeeplearningforexamplelikecomputergraphicslikevirtualrealityapplications。SoitsdifferentfromastrictASICthatisdesignedtoonlyonefunctionlikeamodemforexample。
  我们在做的不只是一个应用程序,而是在尝试做一个应用程序领域,比如深度学习,例如像虚拟现实、图形处理。因此,它不同于ASIC,后者设计仅具有一个功能,就例如调制解调器。
  Itrequiresmoredomainspecificknowledge。SoweneedtohavealanguagewhichconveysimportantpropertiesoftheapplicationthatarehardtodeduceifwestartwithalowlevellanguagelikeC。Thisisaproductofcodesign。Wedesigntheapplicationsandthedomainspecificprocessortogetherandthatscriticaltogetthesetotoworktogether。
  它需要更多特定领域的知识。所以我们需要一种语言来传达应用程序的重要属性,如果我们从像C这样的语言开始就很难推断出这些属性。这是协同设计的产物。我们一起设计应用程序和特定领域的处理器,这对于让它们协同工作至关重要。
  Noticethatthesearenotgoingtobethingsonwhichwerungeneralpurposeapplications。Itsnottheintentionthatwetake100Ccode。It’stheintentionthatwetakeanapplicationdesigntoberunonthatparticularDSAandweuseadomainspecificlanguagetoconveytheinformationtotheapplicationtotheprocessorthatitneedstogetsignificantperformanceimprovements。
  请注意,这不是用来运行通用软件的。我们的目的不是要能够运行100个C语言程序。我们的目的是让应用程序设计在特定的DSA上运行,我们使用特定领域的语言将应用程序的信息传达给处理器,从而获得显着的性能提升。
  Thekeygoalhereistoachievehigherefficiencybothintheuseofpowerandtransistors。RememberthosearetwolimiterstherateatwhichtransistorgrowthisgoingforwardandtheissueofpowerfromthelackofDenardscaling。Soweretryingtoreallyimprovetheefficiencyofthat。
  这里的关键目标是在功率和晶体管方面实现更高的效率。请记住,晶体管增长的速度和登纳德缩放定律是两个限制因素,所以我们正在努力提高效率。
  Goodnews?Thegoodnewshereisthatdeeplearningisabroadlyapplicabletechnology。Itsthenewprogrammingmodel,programmingwithdataratherthanwritingmassiveamountsofhighlyspecializedcode。Usedatatotraindeeplearningmodeltodetectthatkindofspecializedcircumstanceinthedata。
  有什么好消息吗?好消息是深度学习是一种广泛适用的技术。这是一种新的编程模型,使用数据进行编程,而不是编写大量高度专业化的代码,而是使用数据训练深度学习模型来发现数据中的特殊情况。
  Andsowehaveagoodtargetdomainhere。Wehaveapplicationswhicharereallydemandingofmassiveamountsofperformanceincreasethroughwhichwethinkthereareappropriatedomainspecificarchitectures。
  所以我们有一个很好的目标域,我们有一些真正需要大量性能提升的应用程序,因此我们认为是有合适的特定领域架构的。
  Itsimportanttounderstandwhythesedomainspecificarchitecturescanwininparticulartheresnomagichere。
  我们需要弄明白这些特定领域架构的优势。
  PeoplewhoarefamiliarwiththebooksDavePattersonandIcoauthoredtogetherknowthatwebelieveinquantitativeanalysisinanengineeringscientificapproachtodesigningcomputers。Sowhatmakesthesedomainspecificarchitecturesmoreefficient?
  熟悉大卫帕特森和我合著的书籍的人都知道,在计算机设计上,我们信奉遵循工程学方法论的量化分析。那么是什么让这些特定领域架构更高效呢?
  Firstofall,theyuseasimplemodelforparallelismthatworksinaspecificdomainandthatmeanstheycanhavelesscontrolhardware。Soforexampleweswitchfrommultipleinstructionmultipledatamodelsinamulticoretoasingleinstructiondatamodel。Thatmeanswedramaticallyimprovetheenergyassociatedwithfetchinginstructionsbecausenowwehavetofetchoneinstructionratherthananyinstructions。
  首先,他们使用一个简单的并行模型,在特定领域工作,这意味着它们可以拥有更少的控制硬件。例如,我们从多核中的多指令多数据模型切换到单指令数据模型。这意味着我们显着提高了与获取指令相关的效率,因为现在我们必须获取一条指令而不是任何指令。
  WemovetoVLIWversusspeculativeoutofordermechanisms,sothingsthatrelyonbeingabletoanalyzethecodebetterknowaboutdependencesandthereforebeabletocreateandstructureparallelismatcompiletimeratherthanhavingtodowithdynamicallyruntime。
  我们来看看VLIW和推测性乱序机制的对比。现在需要更好处理代码的也能够得知其依附性,因此能够在编译时创建和构建并行性,而不必进行动态运行。
  Secondwemakemoreeffectiveuseofmemorybandwidth。Wegotousercontrolledmemorysystemratherthancaches。Cachesaregreatexceptwhenyouhavelargeamountsofdatadoesstreamingthroughthem。Theyreextremelyinefficientthatsnotwhattheymeanttodo。Theyaremeanttoworkwhentheprogramdoesrepetitivethingsbutitissomewhatinpredictablefashion。Herewehaverepetitivethingsinaverypredictablefashionbutverylargeamountsofdata。
  其次,我们更有效地利用内存带宽。我们使用用户控制的内存系统而不是缓存。缓存是好东西,但是如果要处理大量数据的话就不会那么好使了,效率极低,缓存不是用来干这事的。缓存旨在在程序执行具有重复性、可预测的操作时发挥作用。这里执行的运算虽然重复性高且可预测,但是数据量是在太大。
  Sowegotoanalternativeusingprefetchingandothertechniquestomovedataintothememoryoncewegetitintothememorywithintheprocessorwithinthedomainspecificprocessor。Wecanthenmakeheavyuseofthedatabeforemovingitbacktothemainmemory。
  那我们就用个别的方式。在我们把数据导入特定领域处理器上的内存之后,我们采用预提取和其他技术手段将数据导入内存中。接着,在我们需要把数据导去主存之前,我们就可以重度使用这些数据。
  Weeliminateunneededaccuracy。Turnsoutweneedrelativelymuchlessaccuracythenwedoforgeneralpurposecomputinghere。Inthecaseofinteger,weneed816bitintegers。Inthecaseoffloatingpoint,weneed16to32bitnot64bitlargescalefloatingpointnumbers。Sowegetefficiencytherebymakingdataitemssmallerandbymakingthearithmeticoperationsmoreefficient。
  我们消除了不需要的准确性。事实证明,我们需要的准确度比用于通用计算的准确度要低得多。我们只需要816位整数,要16到32位而不是64位的大规模浮点数。因此,我们通过使数据项变得更小而提高效率。
  Thekeyisthatthedomainspecificprogrammingmodelmatchestheapplicationtotheprocessor。Thesearenotgeneralpurposeprocessor。YouarenotgonnatakeapieceofCcodeandthrowitononeoftheseprocessorsandbehappywiththeresults。Theyredesignedtomatchaparticularclassofapplicationsandthatstructureisdeterminedbythatinterfaceinthedomainspecificlanguageandtheunderliningarchitecture。
  关键在于特定领域的编程模型将应用程序与处理器匹配。这些不是通用处理器。你不会把一段C代码扔到其中一个处理器上,然后对结果感到满意。它们旨在匹配特定类别的应用程序,并且该结构由领域特定语言中的接口和架构决定。
  Sothisjustshowsyouanexamplesoyougetanideaofhowwereusingsiliconratherdifferentlyintheseenvironmentsthenwewouldinatraditionalprocessor。
  这里我们来看一个例子,以便了解这些处理器与常规处理器的不同之处。
  WhatIvedonehereistakenafirstgenerationTPU1thefirsttensorprocessingunitfromGooglebutIcouldtakethesecondorthirdorfourththenumberswouldbeverysimilar。Ishowyouwhatitlookslikeitsablockdiagramintermsofwhatthechipareadevotedto。Theresaverylargematrixmultiplyunitthatcandoatwo56x256x8bitmultipliesandthelateronesactuallyhavefloatingpointversionsofthatmultiplying。Ithasaunifiedbufferusedforlocalactivationsofmemorybuffer,interfacesaccumulators,alittlebitofcontrolsandinterfacestoDRAM。
  这里展示是谷歌的第一代TPU1,当然我也可以采用第二、第三或第四代,但是它们带来的结果是非常相似的。这些看起来像格子一样的图就是芯片各区域的分工。它有一个非常大的矩阵乘法单元,可以执行两个56x256x8位乘法,后者实具有浮点版本乘法。它有一个统一的缓冲区,用于本地内存激活。还有接口、累加器、DRAM。
  TodaythatwouldbehighbandwidthDRAMsearlyonitwithDDR3。Soifyoulookatthewayinwhichtheareaisused。44ofisusedformemorytostoretemporaryresultsinweightsandthingsbeencomputed。Almost40ofbeingusedforcompute,15fortheinterfacesand2forcontrol。
  在今天我们使用的是高带宽DRAM,以前可能用的是DDR3。那我们来具体看看这些区域的分工。44用于内存以短时间内存储运算结果。40用于计算,15用于接口,2用于控件。
  ComparethattoasingleSkylakecorefromanIntelprocessor。Inthatcase,33asbeingusedforcach。SonoticedthatwehavemorememorycapacityintheTPUthenwehaveontheSkylakecore。Infactifyouweretoremovethecapsfromthecachethatnumberbecausethatsoverheaditsnotrealdata,thatnumberwouldevenbelarger。TheamountontheSkylakecorewillprobablydroptoabout30alsoalmost50morebeingusedforactivedata。
  将其与英特尔的Skylake架构进行比较。在这种情况下,33用于缓存。请注意,我们在TPU中拥有比在Skylake核心上更多的内存容量,事实上,如果移除缓存限制,这个数字甚至会更大。Skylake核心上的数量可能会下降到大约30,用于活动数据的数量也会增加近50。
  30oftheareaisusedforcontrol。ThatsbecausetheSkylakecoreisanoutoforderdynamicscheduleprocessorlikemostmoderngeneralpurposeprocessorsandthatrequiressignificantlymoreareaforthecontrol,roughly15timesmoreareaforcontrol。Thatcontrolisoverhead。It’senergyintensivecomputationunfortunatelythecontrolunit。Soitsalsoabigpowerconsumer。21forcompute。
  30的区域用于控制。这是因为与大多数现代通用处理器一样,Skylake核心是一个无序的动态调度处理器,需要更多的控制区域,大约是15倍的区域。这种控制是额外负担。不幸的是,控制单元是能源密集型计算,所以它也是一个能量消耗大户。21用于计算。
  SonoticedthatthebigadvantagethatexistshereisthecomputeareasroughlyalmostdoublewhatitisinaSkylakecore。Memorymanagementtheresmemorymanagementoverheadandfinallymiscellaneousoverhead。sotheSkylakecoreisusingalotmoreforcontrolalotlessforcomputeandsomewhatlessformemory。
  这里存在的最大优势是计算区域几乎是Skylake核心的两倍。内存管理有内存管理负担,最后是杂项负担。因此,控制占据了Skylake核心的区域,意味着用于计算的区域更少了,内存也是同理。
  Sowheredoesthisbringus?WevecometoaninterestingtimeinthecomputingindustryandIjustwanttoconcludebyreflectingonthisandhowsayingsomethingabouthowthingsarelikelytogoforwardinthefuturebecauseIthinkwereatarealturningpointatthispointinthehistoryofcomputing。
  那么我们现在处于一个什么位置呢?我们来到了计算行业的一个有趣时期。我想通过分享一些我的个人思考、以及对未来的一些展望结束这场讲演,因为我认为我们正处在计算领域历史的一个转折点。
  From1960s,theintroductionofthefirstrealcommercialcomputers,to1980wehadlargelyverticallyintegratedcompanies。
  从1960年代第一台真正的商用计算机的出现到1980年,市面上的计算机公司基本上都是垂直整合的。
  IBMBurroughsHoneywellbeearlyspinoutsoutoftheactivityattheuniversityofPennsylvaniathatbuiltENIACthefirstelectroniccomputer。
  IBM、宝来公司、霍尼韦尔、以及其他参与了宾夕法尼亚大学制造的世界上第一台电子计算机ENIAC公司都是垂直整合的公司。
  IBMistheperfectexampleofaverticallyintegratedcompanyinthatperiod。Theydideverything,theybuiltaroundchipstheybuilttherounddiscsinfacttheWestCoastoperationofIBMhereinCaliforniawasoriginallyopentododisctechnologyandthefirstWinchesterdiscswerebuiltontheWestCoast。
  IBM是那个时期垂直整合公司的完美典范。IBM好像无所不能,他们围绕着芯片制造,他们制造了光盘。事实上,IBM在加利福尼亚的西海岸业务最初就是光盘技术,而第一个温彻斯特光盘就是在西海岸制造出来的。
  Theybuilttheirownprocessors。The360,370series,etc。Afterthattheybuildtheirownoperatingsystemtheybuilttheirowncompilers。Theyevenbuilttheirowndatabaseestate。Theybuilttheirnetworkingsoftware。Insomecases,theyevenbuiltapplicationprogrambutcertainlythecoreofthesystemfromthefundamentalhardwareupthroughthedatabasesOScompilerswereallbuiltbyIBM。Andthedriverherewastechnicalconcentration。IBMcouldputtogethertheexpertiseacrossthesewidesetofthings,assembleaworldclassteamandreallyoptimizeacrossthestackinawaythatenabledtheiroperatingsystemtodothingssuchasvirtualmemorylongbeforeothercommercialactivitiescandothat。
  他们还构建了自己的处理器,有360、370系列等等。之后他们开发了自己的操作系统、编译器。他们甚至建立了自己的数据库、自己的网络软件。他们甚至开发了应用程序。可以肯定的是,从基础硬件到数据库、操作系统、编译器等系统核心都是由IBM自己构建的。而这里的驱动力是技术的集中。IBM可以将这些广泛领域的专业知识整合在一起、组建一个世界一流的团队、并从而优化整个堆栈,使他们的操作系统能够做到虚拟内存这种事,这可要比在其他公司要早得多。
  Andthentheworldchanged,reallychangedwiththeintroductionofthepersonalcomputer。Andthebeginningofthemicroprocessorstakesoff。
  接着出现了重大变化个人电脑的推出和微处理器的崛起。
  Thenwechangefromaverticallyorganizedindustrytoahorizontallyorganizedindustry。Wehadsiliconmanufacturers。IntelforexampledoingprocessorsalongwithAMDandinitiallyseveralothercompaniesFairchildandMotorola。WehadacompanylikeTSMCarisethroughsiliconfoundrymakingsiliconforothers。Somethingthatdidntexistinearlierbutreallyinthelate80sand90sreallybegantotakeoffandthatenabledotherpeopletobuildchipsforgraphicsorotherotherfunctionsoutsidetheprocessor。
  接着这个行业从垂直转变为水平纵向的。我们有专精于做半导体的公司,例如英特尔和AMD,最初还有其他几家公司例如仙童半导体和摩托罗拉。台积电也通过代工崛起。这些在早期都是见不到的,但在80年代末和90年代开始逐渐起步,让我们能够做其它类型的处理器,例如图形处理器等。
  ButInteldidntdoeverything。InteldidtheprocessorsandMicrosoftthencamealonganddidOSandcompilersontopofthat。AndoraclecompanieslikeOraclecamealongandbuildtheirapplicationsdatabasesandotherapplicationsontopofthat。Sotheybecameveryhorizontallyorganizedindustry。Thekeydriversbehindthis,obviouslytheintroductionofthepersonalcomputer。
  但是英特尔并没有一家公司包揽所有业务。英特尔专做处理器,然后微软出现了,微软做操作系统和编译器。甲骨文等公司随之出现,并在此基础上构建他们的应用程序数据库和其他应用程序。这个行业就变成了一个纵向发展等行业。这背后的关键驱动因素,显然是个人电脑的出现。
  Theriseofshrinkwrapsoftware,somethingalotofusdidnotforseecomingbutreallybecameacrucialdriver,whichmeantthatthenumberofarchitecturethatyoucouldeasilysupporthadtobekeptfairlysmallbecausethesoftwarecompanyisdoingashrinkwrapsoftwaredidnotwanttohavetoportandandverifythattheirsoftwareworkdonelotsofdifferentarchitectures。
  软件实体销售等兴起也是我们很多人没有预料到的,但它确实成为了一个关键的驱动因素,这意味着必须要限制可支持的架构数量,因为软件公司不想因为架构数量太多而需要进行大量的移植和验证工作。
  Andofcoursetheriseinthedramaticgrowthofthegeneralpurposemicroprocessor。Thisistheperiodinwhichmicroprocessorreplacedallothertechnologies,includingthelargestsupercomputer。AndIthinkithappenedmuchfasterthanweexpectedbythemid80smicroprocessorputaseriesdentintheminicomputerbusinessanditwasstrugglingbythebytheearly90sinthemainfrombusinessandbythemid90sto2000sreallytakingabiteoutofthesupercomputerindustry。Soeventhesupercomputerindustryconvertedfromcustomizespecialarchitecturesintoanarrayofthesegeneralpurposemicroprocessor。Theywerejustfartooefficientintermsofcostandperformancetobetobeignored。
  当然还有通用微处理器的快速增长。这是微处理器取代所有其他技术的时期,包括最大的超级计算机。我认为它发生的速度比我们预期的要快得多,因为80年代中期,微处理器对微型计算机业务造成了一系列影响。到90年代初主要业务陷入困境,而到90年代中期到2000年代,它确实夺走了超级计算机行业的一些市场份额。因此,即使是超级计算机行业,也从定制的特殊架构转变为一系列的通用微处理器,它们在成本和性能方面的效率实在是太高了,不容忽视。
  Nowwereallofasuddeninanewareawheretheneweranotbecausegeneralpurposeprocessoristhatgonnagocompletelygoaway。Theygoingtoremaintobeimportantbuttheyllbelesscentrictothedrivetotheedgetotheferryfastestmostimportantapplicationswiththedomainspecificprocessorwillbegintoplayakeyrole。SoratherthanperhapssomuchahorizontalwewillseeagainamoreverticalintegrationbetweenthepeoplewhohavethemodelsfordeeplearningandmachinelearningsystemsthepeoplewhobuilttheOSandcompilerthatenabledthosetorunefficientlytrainefficientlyaswellasbedeployedinthefield。
  现在我们突然进入了一个新时代。这并不意味着通用处理器会完全消失,它们仍然很重要,但它们将不是驱动行业发展的主力,能够与软件快速联动的特定领域处理器将会逐渐发挥重大作用。因此,我们接下来或许会看到一个更垂直的行业,会看到拥有深度学习和机器学习模型的开发者,与操作系统和编译器的开发者之间更垂直的整合,使他们的程序能够有效运行、有效地训练以及进入实际使用。
  Inferenceisacriticalpartisitmeanwhenwedeploytheseinthefieldwillprobablyhavelotsofveryspecializedprocessorsthatdooneparticularproblem。Theprocessorthatsitsinacameraforexamplethatsasecuritycamerathatsgoingtohaveaverylimitedused。Thekeyisgoingtobeoptimizeforpowerandefficiencyinthatkeyuseandcostofcourse。SoweseeadifferentkindofintegrationandMicrosoftGoogleandApplearealllookingatthis。
  程序推理是一个关键部分,这意味着当我们进行部署时,可能会有很多非常专业的处理器来处理一个特定的问题。例如,位于摄像头中的处理器用途就非常有限。当然,关键是优化功耗和成本。所以我们看到了一种不同的整合方案。微软、谷歌和苹果都在关注这个领域。
  TheAppleM1isaperfectexampleifyoulookattheAppleM1,itsaprocessordesignedbyapplewithadeepunderstandingoftheapplicationsthatarelikelytorunonthatprocessor。Sotheyhaveaspecialpurposegraphicsprocessortheyhaveaspecialpurposemachinelearningdomainacceleratoronthereandthentheyhavemultiplecores,buteventhecoresarenotcompletelyhomogeneous。Someareslowlowpowercores,andsomearehighspeedhighperformancehigherpowercores。Soweseeacompletelydifferentdesignapproachwithlotsmorecodesignandverticalintegration。
  例如AppleM1,AppleM1就是一个完美的例子,它是由苹果设计的处理器,对苹果电脑上可能运行的程序有着极好的优化。他们有一个专用的图形处理器、专用的机器学习领域加速器、有多个核心。即使是处理器核心也不是完全同质的,有些是功耗低的、比较慢的核心,有些是高性能高功耗的核心。我们看到了一种完全不同的设计方法,有更多的协同设计和垂直整合。
  WereoptimizinginadifferentwaythanwehadinthepastandIthinkthisisgoingtoslowlybutsurelychangetheentirecomputerindustry,notthegeneralpurposeprocessorwillgoawayandnotthecompaniesthatmakesoftwarethatrunsonmultiplemachineswillcompletelygoawaybutwillhaveawholenewdriverandthedriveriscreatedbythedramaticbreakthroughsthatweseenindeeplearningandmachinelearning。Ithinkthisisgoingtomakeforareallyinterestingnext20years。
  我们正在以与过去不同的方式进行优化,这会是一个缓慢的过程,但肯定会改变整个计算机行业。我不是说通用处理器会消失,也不是说做多平台软件的公司将消失。我想说的是,这个行业会有全新的驱动力,由我们在深度学习和机器学习中看到的巨大突破创造的驱动力。我认为这将使未来20年变得非常有趣。
  ThankyouforyourkindattentionandIdliketowishthe2021TEDGEconferenceagreatsuccess。Thankyou。
  最后,你耐心地听完我这次演讲。我也预祝2021年TEDGE会议取得圆满成功,谢谢。
投诉 评论 转载

Win7右下角红X不能上网怎么办?Win7系统是Microsoft最经典的操作系统,许多用户使用计算机时选择使用Win7系统。但是,许多用户在Win7重新发明后找到了网络右下角的网络显示红色x,我该怎么办?让我……量子快充新研究速度提高200倍,几秒钟从零加满,电车时代有望机器之心编译机器之心编辑部续航和快充问题解决一个,电车的推广就没有多少阻碍了。无论是光伏还是聚变,人类文明迟早都要转向可再生能源。鉴于人类不断增长的能源需求和……iOS14。8翻车现场,升级之后绿屏更严重了,慎更iOS14。8已经发布有好几日了,有消息称这是iOS14中最稳定的版本,因此越来越多的用户升级到了该版本。但从用户反馈来看iOS14。8体验感似乎没那么乐观。用户1:更完……开挂超车的说唱新世代,用雷柏i300蓝牙TWS耳机听文化绿洲这个夏天,极限挑战曾经的导演严敏和bilibili联手,打造了一款说唱节目。延续了严敏一贯的风格经费有限,比赛在废弃工厂,起居在大通铺,选手们根据成绩从一环住到四环。从被人唱衰……外贸订单减少,跨境电商流量大降,今年的海外市场还有希望吗?从去年旺季减淡开始,几乎所有的跨境人都在寄希望于,2022年能有一个好的新局面。然而,我们不得不面临着一个事实,2022年海外市场不容乐观:不仅外贸订单减少,跨境电商的流……沈阳4。11号核酸报告,13号做核酸,没出结果14号咋上班?没有用,我13号中午做的核酸检测,今天到现在还没出报告,盛事通显红码,今早我去坐地铁上班,不让进,我给地铁工作人员看了辽事通中的显示13号做核酸检测记录,没有用,他们说只认绿码……谷歌董事会主席JohnHennessyAI技术发展放缓,我们50年前,英特尔创始人之一戈登摩尔提出了摩尔定律:集成电路上可容纳的晶体管数目,约每隔24个月便会增加一倍。但近两年,关于摩尔定律是否失效的争论不断。与摩尔定律(Moor……三星GalaxyS23曝光恒驰5预售即将全面启动一、三星GalaxyS23曝光据爆料,三星GalaxyS23代号为ProjectDiamond,首批搭载高通骁龙8Gen2旗舰处理器,这颗处理器是高通2023年大规模商用……比芯片问题更棘手,操作系统几乎被美企统治,华为中兴打破僵局文谛林审核子扬校对知秋受起步晚、基础薄弱等因素的影响,中国集成电路产业长期处于被实施技术封锁和垄断的状态。尤其是近两年,眼看我国半导体产业开始发展壮大,海外为了维护……简单好用的K歌麦克风,聚会娱乐好伙伴大家平时K歌的时候,一般都会去专业的场所,这两年因为特殊原因,大家在家的时候比较长,所以通常只能对着手机K歌,上个月我发现电视、电脑上也有很多K歌APP,配上一支好用的麦克风,……30万左右最靠谱的豪华新能源SUV都在这里,每一款都有拿手绝在咱们的印象中,只要超过30万就可以定义为豪华车,而今天咱就给大家盘点几款三十万左右的豪华新能源SUV,每一款都有自己的拿手绝技!话不多说,一起来看看吧!特斯拉Model……谷歌eBay特斯拉不轻易提加班,硅谷为什么不流行99601hr硅谷有没有996知乎上有一类关于职场加班的问题,最近很红,如硅谷有没有996、美国最好的科技公司,如苹果、亚马逊、谷歌、奈飞Netflix等巨头有没有996。……
小米平板正式确定,下半年即将登场,全面发力高端市场阿里和腾讯分别投入1000亿助力共同富裕,两家巨头有何区别滤镜尬吹炫耀,小红书还值得你信吗?电商中的垄断你看到了吗?展现科技创新共享精彩冬奥日系手机或将崛起,OneSony战略有望实现!六大排序算法插入排序希尔排序选择排序冒泡排序堆排序元宇宙试水多场景跑出加速度大的要来了!vivo首款折叠屏官宣4月11日见开拓产学研新边界为智能学习产业注入新动能iPhone13ProMax获最佳智能手机显示屏奖戴定制式助听器听力会越来越差吗?为什么?仲裁裁决的撤销与不予执行有哪些区别郭志刚:中国的低生育水平及其影响因素河声年轻干部要深悟党史的能量转换我的初二生活作文范例Doinb遭全网抵制,酸小天是企业文化?实质上早有预谋缓解宝宝睡不好的方法有哪些全民k歌女生签名可爱撩人的俗人张三岁暮怀人诗其十一3500点失守,短线可观望为主净利润同比暴增120亿苹果这阵子做对了什么?2018年BRANDZ全球最具价值品牌100强

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利