加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营 > 正文

微软亚洲研究院首席研究员张霖涛:数据中心软硬协同创新让硬件价值最大化

发布时间:2019-06-26 01:44:05 所属栏目:运营 来源:中国IDC圈
导读:副标题#e# 2019年6月25日,由浪潮与OCP开放计算社区联合主办的首届OCPChina Day(开放计算中国日)在北京正式开启。本届OCP China Day聚焦人工智能、边缘计算、OpenRack、OpenRMC、SONiC、OAM等前沿技术话题,来自Facebook、LinkedIn、Intel、微软、百度、
副标题[/!--empirenews.page--]

2019年6月25日,由浪潮与OCP开放计算社区联合主办的首届OCPChina Day(开放计算中国日)在北京正式开启。本届 OCP China Day聚焦人工智能、边缘计算、OpenRack、OpenRMC、SONiC、OAM等前沿技术话题,来自Facebook、LinkedIn、Intel、微软、百度、腾讯、阿里、诺基亚、中国移动、浪潮等资深技术专家分享了最新技术进展。近千名工程师和数据中心从业者参加了此次大会。

OCP是全球最大的开放硬件社区,2011年由Facebook发起成立,其宗旨是以开源开放的方式,重构当前的数据中心硬件,发展面向下一代数据中心的服务器、存储、网络、基础设施等创新硬件。目前,OCP核心会员超过200家。

微软于2014年加入了OCP开放计算项目,是该组织交换抽象接口(SAI)项目的创始成员和贡献者。在本次OCP China Day上,微软亚洲研究院首席研究员张霖涛先生以《The Co-Evolution of Data Center Hardware and Systems Software》为题进行了分享。

7

微软亚洲研究院首席研究员 张霖涛

以下为大会演讲实录:

主持人:下一位嘉宾是来自微软的,微软在OCP的影响举足轻重,我们今天非常荣幸的邀请到微软亚洲研究院首席研究员张霖涛先生。

微软亚洲研究院首席研究员张霖涛张霖涛:今天我跟大家谈一谈系统和硬件,我是在软件方面比较专长,做研究做的比较多,今天是我个人第一次参与到OCP这个大会中,我自己也非常激动。大家都知道我们需要很多系统软件,这样才能更好的应用数据中心里面各种各样的硬件,我们做软件已经做了很长时间了,而且我们有很多非常经典的运行软件,数据中心软件和存储等等相应的软件,很多系统软件都是上世纪70年代做的,所以很多那个时候做软件设计时候的概念和原则性的设想还在影响着当今的软件设计,那个时候他们做了很多假设,比如CPU是中心的处理单元,他们在那个年代做软件时候的设想,他们觉得硬盘比较慢,在内存这边,会把内存做相关的分级,比如缓存、磁盘分验等等。

但是在数据中心这一块,特别是数据中心的硬件,他有很多变革,这些新的技术与之前我们的系统运行软件设计做的假设完全不同了,在现在的数据中心里,这些假设已经不是真的了,比如I/ O,现在I/O很快。

包括400Gb的以太网未来都会很快出来了,还有内存这一块,现在它的变化都非常大。我们现在可以承受几十Gb每秒的处理数据,如果我们现在还遵循原来的假设说I/ O是慢的,就没有办法设计现在数据中心适用的软件了。还有一个趋势,有专用领域的硬件设计,还有一些相关的计算资源,他有一些专用的目的,它的发展非常快,其实大家知道CPU的性能增加现在是比较稳定的,我们CPU的整个增加已经没有以前我们预想的那么快,已经不遵从摩尔定律了,有专用目的的计算资源,他的增长更加符合原来的摩尔定律,现在越来越多工程师的工作经历放在有专用领域的计算资源,CPU和加速器的角色不一样了,我们的原则也有一些改变。

之前百度的发言人也提到,数据中心我们会用智能网卡,为什么大家会用到智能网卡,左边是传统概念,大家觉得CPU在中心,所有计算都要经过CPU,CPU来分配计算资源,现在我们智能网卡也到了整个计算池中的核心,所以我们就变成了智能网卡,上面是FPGA,智能网卡可以做分配和加速器等计算资源。

另外还有一个大家在考虑的事情,要绕过kernel,很多时候我们愿意开发一个OS操作系统,用OS是为了保护硬件的安全,包括绕过硬件相应的短板,往往所有的文件系统访问,和Network的I/ O都是通过运行软件的Kernel内核,他会导致很多资源耗费。

上面是我对现在趋势的一些背景介绍,我也想跟大家分享几个我们现在所做的研究项目,或者是一些例子,因为我是做研发的,所以在接下来的一段时间还会有一些微软的同事介绍生产环境的,我给大家介绍研发的案例,怎么解决硬件软件的问题。

第一,KeyvalueStore,在数据中心里Key valueStore是重要的部分,传统是用云里的缓存,比如把一个网页或者访问结果做缓存,但是现在Key valueStore已经成为数据中心关键的设施了,因为它用来传输不同的图形处理器和其他相关的计算资源之间的沟通,所以现在Key valueStore有一些其他的特性要求,比如我们要求它要有更大的通量。

所以我们现在的缓存基本上对于现在的数据架构是需要的,另外我们还需要其他的运营系统,这样可以作为非常好的数据架构使用。传统而言,大家做了存储非常多的架构,比如他做了非常好的优化,人们传统的方式是使用了Kernel TCP的方式,后来他们又做了Kernel ByPass的方式,当然我还需要使用CPU,因为CPU作为计算的主要引擎,内存本来应该有更好的负载,所以它相当于是CPU成为一个瓶颈了。

最后大家觉得我们把CPU直接绕过,最后直接在客户端进行一个运算,很显然我们有各种不同的客户,我们把他们到同样的线上进行协调,我们基本上要使用Smartnet的键,Smartnet把CPU的工作负载放在NIC上面,在微软上面用NIC进行加速,在这样一个方式中可以使用新的硬件,实际上完成的还是老的任务。

我们看一下关于KV-Direct的架构,它不是通过CPU,它是通过CPU绕过的方式实现的,我们所做的是要把整个堆站放在上面,CPU仅仅是用了一个非常小的工作负载,比如存储的一部分,还有垃圾箱等等非常小的负载。

我不打算讲这些细节了,我想说的是他的绩效非常棒,我们可以看到它已经实现了硬件的最高值,能到这个图中的基本上间值已经达到最佳,而且可以扩展,它的扩展是线性的,我们可以做非常好的部署。

我们来看一下它和之前方式的对比,如果你看一下绩效,我们可以看到间值存储要比现在的解决方案好的多。我们经常开玩笑说仅仅用了这么小的工作包就可以支持整个网上的浏览,我们对于KV-Direct到底有什么样的好处,他是利用了SmartNIC的硬件执行KV,CPU仅仅是运维控制了,并且硬件的绩效已经到了顶峰,两年之前已经可以做到这样了。很多工作负载可以以这个方式进行改变,比如DIN、媒介、存储、运维等,是经过数据中心的工作负载处理的方式,我们用了SmartNIC作为主要指标。

Socket是一个老概念了,大约50年前就有了,它比较复杂,他要支持安全以及语义等等,所以我们现在看到关注在Socket的麻烦是它在linux上运行,它的绩效比较低,花了特别多CPU的空间,我们能够看到的,对于Socket大约是占了80%到90%的CPU空间,而且他还浪费了很多网络的空间,所以我们把自己的硬件空间也都浪费掉了,我们在这里所要做的一个事情就是能够有一个非常本地的Socket,它和硬件RDMA以及多核有更好的融合,同时我们还能够让Socket是分离的,来保证它的安全性。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读