首页青年读书正文

英特尔:软硬结合打造“万能接口”

青年读书2019-11-1155

IT时报记者 王昕


当你用谷歌、百度完成一次搜索,当你在直播平台观看一场游戏直播,当你使用微信语音识别自己的声音时,当你在使用AWS、微软Azure、阿里云、腾讯云等全球任何一家头部云计算公司的服务时……所有这些互联网应用的那头,除了跳动在数据中心的英特尔处理器硬件,还有无处不在的英特尔软件,在云计算、AI、机器学习等技术的深处和底层,英特尔自研的软件正变得不可或缺。


英特尔亚太研发中心总经理卢炬


曾经从赛扬到奔腾、从奔腾一代到二代,通过简单处理器升级即完成计算升级和应用匹配的时代已经结束,硬件必须与软件充分结合,来面向多样化的、极其丰富的应用场景,而强大计算能力和多样化应用的那个“万能接口”就是——软件。


“软件对于英特尔来说是一个重要资产,英特尔在全球大概10万到11万人,软件工程师占到15%左右。英特尔软件也是推动未来计算创新的隐形力量。”英特尔亚太研发中心总经理卢炬强调,即便在今天,英特尔的战略中心从以PC为中心,转到以数据为中心上,在这个转型过程中间,市场的规模是已经扩大到一个总量约为3000亿美元的市场,“如果光通过开发和优化硬件,那么性能的提高可能远远达不到现在以数据为中心的战略需求,所以如果想要实现指数级的增长,一定要软硬件协同。” 与此同时,英特尔也正在构筑自己的软件生态号召力,联合业内合作伙伴,加速创新技术的大规模部署。


用“开源”证明“虚拟化”


对于绝大多数普通人来说,也许绝对猜不到,对于英特尔这样一个硬件CPU巨头来说,在Linux内核、Kernel/KVM这两个基础软件里,英特尔整个在社区里面代码贡献量常年都是高居第一的。


英特尔亚太研发中心、开源首席科学家冯晓焰介绍,英特尔全面拥抱开源软件已经有长达近20年的时间了,“英特尔内部成立了一个名叫‘开源软件技术中心’的团队,英特尔在上世纪90年代就已经开始拥抱开源。”


英特尔很多的核心技术,是在开源软件上首先实现的。冯晓焰回忆,“我们最开始做虚拟化是在开源软件XEN上面实现的,当时整个业界,没有认识到虚拟化的重要性。我们曾经和一下软件厂商沟通, 希望他们能够开发支持虚拟化的软件,但在当时并没有得到很好的反馈。”后来,英特尔决定先从开源软件实现,虚拟化技术在开源软件上先成功,然后才是商业软件的成功。正是虚拟化技术的成熟使得 “云计算”能够真正落地。


英特尔推动了OpenStack 在中国的社区的活跃和广泛应用。冯晓焰补充,英特尔在国内有专门做OpenStack的团队,推动了整个OpenStack在社区的活跃和广泛应用。最近几年OpenStack的技术峰会都会评所谓“超级用户”,“超级用户”有非常严格的标准,类似中国移动、腾讯,都得到过“超级用户”的名称。事实上英特尔一直在和这些OpenStack“超级用户”密切合作,为他们提供了很多支持。


补上系统架构的“缺口”


数据和计算之间的关系可能是近两年来英特尔最关心的课题之一。据英特尔公司透露,全球超过90%的数据都是在近几年产生的,而其中超过一半的数据都是在过去2年产生的,IoT和5G使数据的生成速度和规模越来越大,“但形成鲜明对比的,这其中只有不到2%的数据经过了分析的,这说明还有大量的数据是‘沉默’的。”


英特尔公司架构、图形与软件部(IAGS),资深软件架构师黄晟盛认为,之所以会出现这种情况,是因为人工智能这样新的技术从实验室到真正生产线的过程当中,当中有很多实际的问题,在软硬件架构上还有很大的缺口,“大规模人工智能应用正面临的巨大挑战包括,本身算法、部署和数据处理的复杂性,还有成本,是不是可扩展,专有接口,数据隐私等等。”


众所周知,目前大量的数据存储和预处理都在如Hadoop/Spark等大数据的平台里完成,而机器学习深度学习新模型和新算法都是用tensorflow、 pytorch等框架开发的。“这正是英特尔开发BigDL和Anlytics-Zoo的目的,我们可以允许不同框架的模块,包括TensorFlow、Keras、 PySpark等,都可以无缝集成在端到端的流水线上面去,使用户开发AI应用的时候能够更高效。”黄晟盛说,“英特尔的软件工具能够把不同的模块之间的优化打通,来自英特尔底层的软硬件优化比单独优化各个模块更加高效。”


AI领域的优化专家


“性能与优化”并不是一个新的话题,其贯穿于计算机技术发展各个历史时期。早期的工作主要是基于算法和软件层面的,对于英特尔来说,近年来越来越多地从系统角度出发。


中国区云计算软件性能优化团队总监李宏表示:“一方面,我们强调软件充分支持硬件的各种各样的功能。另一方面,我们也强调软硬件相互协调搭配,从而从系统角度达到最优。”


而性能优化的工作强调双向的协作与互动,“一方面,我们会把英特尔的一些技术介绍到客户的软件开发当中,帮他们提高一些性能。这个过程当中,我们也加深了对他们软件的了解,知道了我们的技术的表现和客户未来的技术需求”李宏介绍道。“同样的解决方案,在不同的使用场景之下对系统的压力和带来的效果可能是完全不同的。这也就直接导致后期的优化和整体上进行相应择优的最佳思路和最佳实践完全不同。要理解这一点,就主要依赖我们对合作伙伴的工作负载的深刻理解,通过搭建具有代表性的离线系统,为客户带来巨大的性能提升。”


“我们在AI领域内的合作,包括新指令集使用、新的拓扑逻辑、新的框架等,大部分的程序经过优化之后能够达到2-4倍的性能提升,个别能够提高10倍。”李宏介绍。


本质是“服务开发者”


英特尔在软件战略上有自己的价值观吗?英特尔机器学习首席工程师林晓东说,如果用最简单的话来形容,英特尔软件工作的本质是为广大开发者服务,“英特尔做软件希望向客户实现enabling(使能)和optimization(使高效),英特尔做的事情是使我们所有硬件的每一个晶体管都能够能力充分发挥起来,这是英特尔做软件的目的,使得开发者能够非常容易地把我们的软件、硬件充分用起来。”


卢炬表示,英特尔关注AI、5G、自动驾驶等关键行业和应用,“但英特尔也意识到AI是一次长跑,并不是单单某个风口。”


在英特尔亚太研发中心紫竹园区团队,经历了从世界软件外包到中国本地化的根本性变革,“现在我们真正扎根中国、根据中国企业的具体需求,创造了软件、服务了全球,这是我们非常值得骄傲的一点,我们做到了。”林晓东说,英特尔希望帮助中国的企业,在聘请不到开发者或者缺少相关专业知识的情况下,也能走向智能制造。


从提供工具,助力优化,到携手行业,共建生态,英特尔通过长期投入,秉承开放理念,打造了强大的软件实力与过硬的生态系统,成为了行业伙伴背后信得过、靠得住的推动者与赋能者。


版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。