Onur Mutlu是苏黎世联邦理工学院和卡耐基梅隆大学讲席教授。他获得了2019年莫里斯·威尔克斯奖。本文作者在奥努尔获奖后对他进行了采访。囿于篇幅,本采访分为上下两部分刊登在 CCCF上。第8期刊登了上半部分,本期刊登下半部分。
编者按:奥努尔·穆特卢(Onur Mutlu)是苏黎世联邦理工学院和卡耐基梅隆大学的William D. and Nancy W. Strecker Early Career讲席教授。他获得了2019年莫里斯·威尔克斯奖(Maurice Wilkes Award)。本文作者在奥努尔获奖后对他进行了采访。囿于篇幅,本采访分为上下两部分刊登在 CCCF上。第8期刊登了上半部分,本期刊登下半部分。
关键词:莫里斯·威尔克斯奖 计算机体系结构
问:在您的所有论文中,您认为哪篇是最重要的?
奥努尔:这个问题我不太好回答,因为我的很多篇论文我都喜欢。每个人都应该喜欢自己的论文,它们就像自己的孩子一样,对吧?你怎么能在不同的孩子之间做出选择呢?
问:相对来说呢?要不选出前三篇吧?
奥努尔:要不前二十篇怎么样?比如前面提到的关于预执行的论文,它发表在HPCA’03,是我的第一篇论文,也奠定了我毕业论文的基础。现在回头看,我觉得写得不够好,还可以写得更好,所以我又重写了一遍。你们可以看出我很喜欢这篇论文。但我还是不想给论文排序,就让我按照时间顺序谈一谈吧,我想到哪些就说哪些。
在微软研究院,我们写了一篇关于内存攻击的论文,我很喜欢。我认为它启发了许多新研究,包括针对安全设计的内存控制器。我在微软研究院以第一作者写的论文之一是关于并行性的批处理调度,这是解决内存服务质量问题的一个潜在方案,它的一个变体就是目前一些SoC内存控制器采用的实现方案。我非常喜欢这篇论文,它为如何写好论文提供了一个很好的示范。事实上,我建议我的学生都阅读这篇论文,并把它作为一个范例来学习。我们在微软还写了一篇无缓冲路由的论文,我也很喜欢。我们还和微软的同事一起写了第一篇关于相变存储器的论文,发表在ISCA’19上。还有RAIDR, 它考虑数据保留的智能DRAM刷新,是我们在ISCA’12上发表的论文。它开启了很多研究,例如如何减少和摆脱刷新问题,包括我们在做的很多工作,以及这个领域里其他人的工作。另一篇论文是关于subarray级并行性的文章(发表于ISCA’12),我认为也非常重要,因为这摆脱了bank冲突的影响。三星和英特尔也采用了这种方法,他们在2014年的Memory Forum上发表了一篇论文,说这是一个好主意,应该应用在未来的产品中,因为它能够容忍bank冲突导致的长时间延迟。当然,关于Rowhammer的那篇论文是非常激动人心的。我还很喜欢我们在PIM(Processing-In-Memory)方面所做的工作,比如维韦克(Vivek)的RowClone论文,本质上是在DRAM中克隆页面,而不需要经过处理器,速度非常快。然后是他后来的Ambit论文,做的是在DRAM中执行大量的位操作。我认为这些都是非常具有前瞻性的工作。我们还做了3D内存PIM的工作,比如在ISCA 2015中发表的Tesseract。所以,我很难从所有论文中挑出一篇最重要的。
问:它们都是很棒的论文!
奥努尔:我很高兴你也这么认为。另外我们基于多年来搭建的基础设施发表了一篇在DRAM里生成真随机数的论文。用到的方法是通过减小DRAM的延迟,得到一些出错率为50%的内存单元,它们本质上是随机数字生成器。如果有一种机制可以分析这些内存单元,那么只需在高吞吐量和低延迟的情况下更改内存控制器,就可以生成真随机数,而不需要更改DRAM。能完成这个工作,离不开我们过去做过的所有研究,以及对我们构建的DRAM的理解。我可以一直讲下去,只可惜时间有限,感兴趣的读者可以在我个人主页(http://people.inf.ethz.ch/omutlu/)查看相关论文。
奥努尔获得莫里斯·威尔克斯奖
问:在ISCA会议上,您发表的论文比其他任何人都多。您是如何管理时间的?又是如何指导学生写出这么多论文的?
奥努尔:我需要强调一下,论文只是达到目的的一种手段。我的目标一直是如何解决一个问题,使它能在世界上产生很大的、根本性的影响。首先你需要选择一个重要的问题,然后找到解决这个问题的好想法,之后通过正确的评估和实现来得到好的结果,最终证明你的想法能解决这个问题。下一步才是写论文,向世界展示这是一个好想法,或者是一个应该考虑的机制。我有一个很大的研究团队,有很多学生,我们能够关注很多话题并发表很多论文。关于指导学生,我和学生合作很密切,但也给他们很多自由,所以我觉得我能激发学生的创造力。我试着挑选那些擅长于独立工作的学生,也会鼓励我的学生相互合作、帮助和促进,这样能找到很多新的想法。如果我的学生做得很好,我只会给他们正确的反馈,让他们找到自己的路。
在如何安排自己的时间方面,我工作很努力,我认为很多工作都需要不懈地努力,这没有什么捷径。当然有时候会有压力,所以需要找到一种方式来缓解压力。我的方式是游泳。莫里斯·威尔克斯奖的颁奖仪式在凤凰城(Phoenix)举办,这里风景很漂亮,可以在外面惬意地游泳。领奖的那天早上我就从6点游到了7点40,速度不是很快,但应该高于平均水平。你要很努力地工作,也要很努力地玩。最好的方法就是做你喜欢做的事。研究对于我来说是一种生活方式,我也让其他事情成为我喜欢的生活方式的一部分,比如游泳和旅行。
问:您刚才提到,选择学生的标准之一是他们的独立性,还有其他的标准吗?您会鼓励他们进入学术界吗?
奥努尔:关于挑选学生,我认为这是一门艺术,是很不容易的,并没有一个单一的“算法”来选择好学生。独立性是一个很好的衡量标准,但我很希望学生拥有所有良好的品质。他们应该具有创造力和韧性,要勤奋,并且真心想读博士。我认为读博士能够坚持到最后的关键是要有韧性,因为这是一条漫长的道路。另外,在选择读博士这条路的时候,你需要有正确的心态。我总是试图寻找与我合拍的学生。对于进入学术界,我并不强烈地建议。学生进入学术界成为教授当然是件好事,但这最终取决于学生,因为学术界和工业界是很不同的。如果你真的不喜欢教书,也许学术界对你并不适合。但如果我发现一个学生具有成为优秀教师的潜力,同时也做出了出色的研究,我会鼓励他尝试进入学术界。我鼓励了很多学生,但他们中的大多数最终进入了工业界,这不是坏事,如果这是他们想做的,那当然是很棒的选择。我认为,在你拿到博士学位后要考虑的一件事是:你一旦进入工业界,可能就很难再回到学术界了。特别是如果与学术圈不再联系,停止发表论文,那么你在学术界就不再是可见(visible)的了。而从学术界回到工业界并不很难,主要是因为工业界有很多职位。反之学术界的工作一般很难找到,因为职位太稀缺了。
问:您最近从美国的卡耐基梅隆大学来到了瑞士的苏黎世联邦理工学院。这两个学校有什么不同?欧洲和美国有什么不同?
奥努尔:这两所大学都是顶尖的学校,苏黎世联邦理工学院在计算机科学领域是顶尖的,有很多很好的资源。卡耐基梅隆大学是一所私立学校,而苏黎世联邦理工学院主要由瑞士联邦政府资助。对于教授来说,可以从瑞士联邦政府得到很多非常慷慨的资助,所以我不需要像在卡耐基梅隆大学那样写那么多的资金申请书。在卡耐基梅隆大学,你需要为你想指导的每一个学生申请资金,虽然这对于我来说不是大问题,但需要占用很多时间,导致我和学生一起工作或思考新想法的时间就少了。对于两所顶尖高校,从博士生的角度来看,导师比学校更重要。当然这两所学校都能提供合适的环境,学生可以有足够的资源,能在活跃的研究环境里找到许多与其他人合作的机会。说到美国和欧洲,瑞士虽然处于欧洲中部,但不是欧盟成员国。瑞士的大学像是一种欧美的融合体,更接近美国的大学。
问:近年来,您对生物信息技术进行了深入的研究,这在计算机架构中不是一个传统的课题。您是如何发现这个课题的?在对此课题进行研究的过程中,让您感到最兴奋的事情是什么?
奥努尔:我喜欢这个问题。关于我是如何开始这个课题的,我专门做过演讲。这个课题是通过和我的一个朋友卡恩·阿肯(Can Alkan)的合作开始的。那时我在微软研究院,他在华盛顿大学基因组科学系做博士后,主要做基因组分析。他现在是土耳其的比尔肯特大学的教授。他对构建比对器(mappers)很感兴趣,例如用比对器来做快速的基因组分析。那是2007年在雷尼尔山,我们在爬山期间进行了很多头脑风暴。我们都很感兴趣的事之一就是设计速度非常快的基因组分析机制。那个时候,进行重建序列并将它们映射到参考基因组(也叫做序列比对)的速度非常慢。这是基因组分析的第一个基本部分。考虑不同基因组的不同之处,以及它们对特定药物的易感性,首先需要重建基因组,而这需要很长时间。如果这个过程需要两周的话,那么实时分析就完全没有希望。我们当时设想了嵌入式设备可以非常快地做此分析。当然,这需要在体系结构和生物信息学两方面做研究。于是我们开始研究和开发软件:如何设计出既全面又能做基因组分析的比对器呢?如何让它们跑得非常快?我们在此方面的第一篇论文发表在了2009年的《自然遗传学》上,后来又在《BMC基因组学》上发表了一篇,是关于软件方法的,我们做的加速非常快。之后我们在《生物信息学》上发表了很多论文,是用FPGA来加速这些比对器的。我们考虑了GPU,最近也在考虑PIM技术。
现在我们的团队已经有一定规模了。去年,我的第一个从事基因组分析的学生穆罕默德·阿尔瑟(Mohammed Alser)毕业了,他是我和卡恩·阿肯共同指导的。现在我有5个学生在研究生物信息学,还包括用于生物信息学的系统设计——如何为生物信息学设计系统。这需要很多生物信息学的知识,才能从上层实现更快、更高效的处理。现在,我们通过大规模地处理大量数据,可以生成大量的基因组数据,也将实现具有高带宽的基因组测序。这是一个非常关键的问题,它使我们之前无法想象的应用成为可能。例如,一个医生正在治疗一个病人,在病人生死攸关之际,医生需要决定用哪种药物。通过这项研究成果,可以帮助医生很快做出决定。这就是令我真正感到兴奋的地方。如果我们能在这项研究中取得成功,那么快速选择对人们非常重要的药物治疗就会成为可能。如果我们能很快地分析、管理基因组,就能在物种起源和物种之间的不同关系方面有很多新的发现。
问:您如何看待当前中国的体系结构研究?
奥努尔:我很喜欢中国,已经来过8次了。今年8月份我会再次去天津,在并行技术国际学术会议(APPT)上发表主题演讲。我有很多中国学生,骆一欣是最近的一名毕业生,还有在闪存问题上做了很多开创性工作的蔡宇,等等。我记得2000年我开始读研究生的时候,中国并没有很多体系结构方面的研究。当然有很多中国人在体系结构领域(探索),比如胡文美教授。但随着时间的推移,在过去的20年里,中国的进步可以说是指数级的,当然这只是一个比喻。中国在如何产生想法方面有了巨大的进步,现在的国际会议上能看到很多来自中国的论文。我觉得,中国在体系结构研究的早期阶段,更注重实现而不是新的想法。我想这个障碍现在已经被克服了,很多来自中国的优秀学者和学生正专注于创新,我希望未来中国会保持这样的趋势。
问:这是最后一个问题。在计算机体系结构领域,主要有三个会议:ISCA、MICRO和HPCA。对于学生来说,它们看起来很相似,但它们是由三个组织管理的,分别是SIGARCH、TCCA和SIGMICRO。这是历史原因造成的吗?我们可以做些什么来进一步改善学术圈?
奥努尔:由于历史原因,这三个会议的发起方式是不同的,不同的人发起了不同的会议。因此,会有不同的组织管理这些会议。我认为这是一件好事,因为它促进了学术界的多样性, 不仅是人的多样性,也是思想的多样性。有不同的声音总是好的,可以更好地处理不同的事情。我可以给你们讲一些历史,说明它们发起的方式为什么不同。
MICRO是这三个会议中的第一个,它始于1968年,那时人们对如何更好地进行微程序设计非常感兴趣。顺便提一下,微程序设计是莫里斯·威尔克斯在1951年的论文中提出的,我很荣幸能获得以他的名字命名的奖项。MICRO是作为一个微程序研讨会被发起的,它涉及到软件,因为要想减少微代码的大小,就需要设计出一个好的软件机制,用较少的代码来完成同样的事情。它的本质是编译或软件优化,因此,MICRO的根基涵盖编译器,这是它最根本的一部分。它也涉及硬件,在那个时候,所有的机器都是微型程序机器。随着时间的推移,MICRO进化了很多,在1991年变成了一个完整的会议。MICRO扩大了范围,它不再只与微程序设计有关——目前关于微程序设计的论文越来越少,数量几乎为零。现在的MICRO和ISCA类似,但ISCA和HPCA会议上没有编译器的内容,而MICRO也较少涉及ISCA和HPCA上的一些话题。例如,ISCA和HPCA有更多更高层面系统的内容,比如网络。由于研究主题和学术热点的演进,会议开始变得越来越相似。现在体系结构领域的三个顶级会议,让学生有更多的机会发表论文。
对于学术圈的改善,这是个很难回答的问题。我在获得莫里斯·威尔克斯奖的演讲中提到了一点,应当改进论文评审制度。这是我们面临的最大问题之一。我们该怎么面对论文的评审意见?这些意见真的是完全基于论文的价值吗?是否有其他因素在影响审稿人的观点?我想很多人都抱怨过,论文有时会因为武断的原因被拒,我也经历过。例如,我们的Ambit论文实现了内存中的批量位操作,但被拒了4次,几次被拒绝的理由是:“这虽然是一篇很棒的论文,有新颖和聪明的想法,但DRAM制造商永远不会实现它”。我认为这是一个武断的理由,没有从科学的角度给出拒稿的原因。你如何证明DRAM制造商永远不会实现它?这并不是论文中的缺陷。我认为我们可以解决这些问题,也需要解决这些问题。如果一些优秀的论文被任意拒绝,会产生很多不好的后果。我们在研究这个想法的两年后才发出了论文,但我们当时先在网络上发布了一个技术报告,名为Buddy-RAM。有研究者借助这个技术报告得以在Ambit的基础上进行研究,所以他们比我们更早地发表了建立在Ambit基础上的论文,甚至是在我们发表Ambit之前。我们启发了新的科学研究,感到非常高兴,但Ambit论文被拒4次造成了这种无序的现象。我认为需要在论文评审系统中建立审查者问责制。我们应该积极考虑潜在的解决方案,并集思广益。这对于学生也很重要,因为论文被武断拒绝是很痛苦的事情。当然,我们还是应该保持韧性,相信自己正在做的工作,继续努力并对它充满激情。
作者介绍:
钱学海
南加利福尼亚大学助理教授。主要研究方向为计算机系统和体系结构。
xuehai.qian@usc.edu
卓有为
南加利福尼亚大学博士生。主要研究方向为计算机体系结构、分布式系统。
youweizh@usc.edu
骆沁毅
南加利福尼亚大学博士生。主要研究方向为分布式机器学习和数据分析。
qinyiluo@usc.edu
CCF推荐
【精品文章】
点击“阅读原文”,加入CCF。