Yan Dong SOSP 2013 Analysis

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享

 

[原文可参阅: http://www.rational.so]

NOV 9TH, 2013

 

SOSP 2013共计30篇论文, 分成9个session. 其每逢奇数年召开, 今年是第24届, 而OSDI在偶数年召开, 去年是第10届. 作为一个有将近50年历史的老牌会议, SOSP一直严格控制论文的数量. 相比于SIGGRAPH动辄上百篇, KDD同时四个分会场, 系统界还是相对保守的. 从这两年的SOSP/OSDI上看, 论文的标题趋向文艺, 内容也更加丰富有趣. 每年会议设置的session完全根据投稿内容而定, 没有事先指定的topic, 因此很能反映学术界和工业界当前的潮流.

世界范围内, 基本上只有最顶尖的20所大学和机构能够比较稳定的在SOSP/OSDI上灌水, 其他学校可能十几年才冒出来一个天纵奇才的哥们中一篇. 顺带提一句, 欧洲只有三所学校在系统方面能够在最顶级的会议上灌水, 分别是Cambridge, ETH和EPFL, 剩下所有的学校都在美国. 国内完全本土培养起的系统届大牛”陈海波”(复旦本硕博,现为上交的教授), 在2011年的时候给<中国计算机学会通讯>写了一篇论述系统届各大会议及研究方法的文章一名系统研究者的攀登之路. 就是由于他在SOSP11上发表了国内第一篇不与国外的工业界(如MSRA, Google)合作而独立完成的顶级论文(CloudVisor), 讲如何在云上使用虚拟机技术进行安全保护的. 三年前他曾来清华与我们组交流过一次, 介绍了他们组当时的四个工作, 为人非常谦恭有礼. 这篇SOSP11发表后不久, 就被上海交通大学挖了过去, 直接给了正教授.

开始正题, 后面的文章中若碰到我熟悉的学校, 实验室和教授我会一一介绍.

Session 1: Juggling Chainsaws, Chair: Rebecca Isaacs

这个session的主席Rebecca Issacs是微软的一名女性研究员, 发表了一堆的顶级论文. 无独有偶, 本session下第二篇文章中的作者Barbara Liskov也是一名女性,可见系统虽然苦, 但并不是纯爷们的领域.

The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors

Austin T. Clements, M. Frans Kaashoek, Nickolai Zeldovich, Robert Morris (MIT CSAIL), Eddie Kohler (Harvard)

本文考察了interface(如system call)对软件扩展性的影响. 核心问题是, 如果把接口和实现良好的分离开来, 那接口的设计中是不是就蕴含了一些天然的限制, 使得无论怎样实现, 都无法突破这些天然限制. 作者编写了一个称为COMMUTER的工具, 以及一个原型操作系统SV6. 实验表明对COMMUTER产生的13664个test而言, linux能对其中的68%良好扩展, 而SV6能良好扩展其中的99%.

这个问题我以前也想到过, 掂量了下自己的能力和完成这个idea的工作量, 就知难而退了. 他们在文中实现的SV6应该不是白手起家. 因为他们组一直在用一个名为XV6的教学操作系统给本科生上操作系统的课程, 我猜这个SV6就是XV6的改型. COMMUTER工具是另外一个硬活, 需要Frans教授这样在系统界摸爬滚打的数十年的经验来指导, 才能真正指出interface内涵的限制. 相比之下, 就算我自己再头悬梁锥刺股的去在上面改一个原型系统出来. 没有这样真正懂得OS的大神指导, 也是没可能完成这样的论文.

这篇文章来自大名鼎鼎的MIT CSAIL实验室下的PDOS小组, 五个作者中的三个我都很熟悉.

Frans Kasshoek教授是在SOSP/OSDI上发表论文最多的作者, 曾担任了三年清华的客座教授, 可能后来嫌我们学校烂泥扶不上墙就没再来了……Frans教授师承自系统届祖师爷级别的人物Andrew S. Tanenbaum, 如今在系统届活跃的研究人员向上追溯师承关系有几乎一小半都可以追到Andrew身上. 我曾听过两次Frans的讲座, 给我印象最深刻的是, 有次我坐在第二排, 正在嘉宾席后面. 他讲完自己的topic之后, 坐在嘉宾席上等待他手下的一个faculty讲另一个topic. 竟然分分钟掏出个Thinkpad打开VIM界面就开始编程了. 当时Frans已经是美国工程院院士了, 年龄也超过了50岁, 竟然还抓紧这种零散时间写程序. 这是我个人见到的最高龄的, 也很可能是最高水平的程序员现场编程.

Nickolai Zeldovich曾经在去年跟我合作过一篇文章, 也是他们到清华讲座. 我发现这哥们懂symbolic execution, 当时我正好有一个idea, 就上去跟他套磁. 他表示pretty cool, 最后就做了篇文章出来, 但不幸跟EPFL的发表在PLDI 12上的一篇文章撞车了, 于是这篇文章只能躺在我的硬盘深处, 没机会再去推动人类进步. 当时跟这哥们的合作主要是通过email, 我把文章发给他, 他给我提建议应当如何继续试验, 如何分析结果, 包括文章内容的取舍, 短短几封信就受益匪浅. 顺便一提, 这哥们是stanford的博士, 期间主要是搞信息流的, 写了第一个支持信息流的操作系统原型HiStar. 学术界一直企图用信息流去在理论上优美的解决信息的控制, 审计等问题, 但据我所知好像一直没在工业界得到大规模的应用.

Robert Morris, 单看这个名字大家可能看着有点眼熟. 没错, 就是他, 1988年在Cornell读研究生的时候发布了世界上第一个蠕虫. 他爹也是个大名鼎鼎的Morris, 曾任美国国家计算机安全中心(隶属于美国国家安全局NSA)首席科学家. 称得上是老子搞安全, 儿子来捣蛋. 以前我第一次读到这哥们的论文的时候, 去他们实验室主页瞎晃, 发现MIT开了一门计算机安全的课程. 课程的introduction就把这位开启蠕虫时代的活化石拉到eager young man们面前, 讲述自己的心路历程…

多核上的扩展性是PDOS小组的传统方向, 从Frans教授算起已经折腾了20多年, 这也是为什么Frans教授是二作, 而Nickolai是三作, 因为Nickolai的主研方向是信息流, 而这样超一流实验室发表的文章的作者顺序, 真的是按贡献大小排序的. 两年前我还在折腾Linux Kernel的时候, 正碰上他们组发表了一篇修改Linux内核的锁实现, 以在众核(单机超过32核)情况下提升应用性能的文章. 文章效果非常好, 使用的几个workload都达到了近乎线性的加速比. 我在学术讨论会上报告这篇文章的时候, 大老板听闻这篇文章只不过编写了1600+行代码, 大手一挥让我们大干快上, 也搞个类似的出来. 可是改内核这种事情, 别说修改1600行, 就是改一行代码, 想要知道在哪里修改能够取得预期的效果, 对普通的博士生来说其背后的工作量都是难以估算的. 不知道他们的技术如今是否被并入了linux kernel distribution的 mainline. 他们组的研究方向相对传统, 很少去赶时髦. 往往是去深入考察一些大家都习以为常的系统的设计和实现, 从中发现改进的机会, 工作都特别的硬. 这个组曾经是我的dream team, 因此对他们的情况比较了解, 在这里介绍的比较多.

Speedy Transactions in Multicore In-Memory Databases

Stephen Tu, Wenting Zheng (MIT), Eddie Kohler (Harvard), Barbara Liskov, Samuel Madden (MIT)

这篇文章是in-memory浪潮的又一体现, 从头实现了一个新的database, silo. 尽量避免所有可能产生数据竞争的设计, 比如transaction ID的分配. 核心贡献是一个commit protocol, 号称能够提供极好的扩展性. 使用TPC-C做测试, 在一台32核机器上能够每秒处理7000000个transactions, 数倍于之前的记录.

许多次跟新的朋友聊起我的研究方向的时候, 我的开场白都是”我们系统界是夕阳产业”. 早在千年之交的时候, Rob Pike大神就做过报告<Systems Software Research is Irrelevant>, 在其中明确表示我们的黄金时代已经过去了, 纯粹的系统研究已经很难再出现破坏性的新idea了. 牛逼的idea只有那些, 已经被大家不知道轮了多少遍了. 所以现在不得不开始走结合的路线, 如软件跟硬件的co-design; OS跟Application的配合(即研制domain specific的kernel); 以及最普遍的Hybrid, 在几个方向上都有所改进, 然后攒在一起, 获得一个considerable improvement, 象这篇文章一样.

四作Barbara Liskov奶奶, 是2008年的图灵奖获得者, 以表彰其在数据抽象, 容错和分布式系统上的卓越贡献. 巴奶奶近些年比较出名的文章是”Practical Byzantine Fault Tolerance“, 发表在99年的SOSP上. 巴奶奶也是历史上第二位女性图灵奖得主. 多提一句, 2006年Frances E. Allen由于在编译器优化和自动并行化领域的奠基性贡献而成为第一位获得图灵奖的女性. 这两位奶奶干的都是系统届最硬的活, 真是名符其实的tough granny.

阅读全文»

(4个打分, 平均:5.00 / 5)

2013 OpenStack Summit

[原文可参阅:CSDN原文报道

在4天内总计250多个演讲中,除了少量分给了赞助商,大部分都是自由申请,并通过用户投票产生。除此之外,OpenStack基金会也会给对生态圈贡献较大的企业提供展位。

在媒体和分析师会议上,OpenStack基金会公布了一项全球范围内的 调查:

超过半数的部署采用了G版或H版(Havana);

采用OpenStack的动机主要为降低成本、提升运行效率和开放;

美国、印度、中国、法国都是很热的区域;

用户主要来自信息科技、电信、政府、健康等领域;

主要业务应用包括Web服务、测试环境、数据库、科研、持续集成自动化测试、存储和备份、虚拟桌面、数据挖掘/Hadoop、管理监控系统、HPC;部署类型主要为私有云服务;

KVM依然是主要的Hypervisor,比例超过六成。LXC以4%的比例排名第5;

部署工具方面,Puppet、Devstack、Chef、Packstack、Crowbar排名前五。

  以下将从若干角度对此次大会进行总结:

中国声音:最多的中国企业和工程师

毫无疑问,由于距离的原因,在香港举行OpenStack Summit给了更多中国公司和工程师机会。至少有超过10场由中国工程师参与分享。OpenStack基金会COO Mark Collier在演讲中透露,在所有的城市中,北京的OpenStack开发者位居第一。但另外一个事实是,在OpenStack技术委员会和项目团队领导人中却很少看到中国工程师的身影,这背后的原因值得深思。

Neutron核心工程师龚永生和梁博带来的是《深入Neutron》,据我观察,这是中国工程师课程中听众最多的,现场至少有200人,不少听众反映“干货”十足。Sheepdog核心贡献者刘源也有精彩的演讲。

阅读全文»

(没有打分)

科技一周~iOS in the car

科技一周~iOS in the car

2013/11/09

初冬之清晨,昨夜萧索一洗,繁华犹未起。然而,相对于午后的喧嚣,我却更喜欢这个时段的硅谷:纯音且无杂,冷清于极处,似此“境界”,非孑然一身之人不可察,非绝顶孤高之人不能至。

本周的新闻里,要说“孑然一身”,自然是指加拿大黑莓公司了;要说“绝顶孤高”,则非苹果的“iOS in the car”莫属。在谈“iOS in the Car”之前,先看看过去的一周,都发生了点儿什么事情:

  • Netflix开始测试4K解析度的超高清视频,其中牵扯颇多编码器设计、视频预处理技术、以及视频领域的帮派纷争,有待将来另辟专栏详细介绍。但无论如何,这总算实现了Netflix CEO,Reed Hastings,半年前的预言:“Streaming 4K video will happen long before linear TV supports 4K video。”
  • Blackberry的私有化闹剧还在上演,华人CEO救火上岗,虽“受任于败军之际”,却比诸葛孔明强太多,拿到一个总值$8500万的薪资+奖金。公司之窘迫 vs. CEO之天价薪水,这从来就是没落公司难以化解的矛盾。归零,指日可期。
  • Apple的透明度报告里说,自己虽然收集用户的信息,但自己的商业模式并不需要这些信息。对此,我只能“呵呵”了,前一个“呵”送给Apple,后一个“呵”留给美国政府。
  • 高通发布财报,并不甚好。面对台湾公司的低价扫盘,其持续了十年的芯片SOC强整合战略,是不是到了新的拐点?至少,现在的业界出现了不同的声音:数字逻辑与模拟电路的分离。至于SOC的强整合,是不是芯片设计的未来之路,话题太长太深,需要专门解答。

下面来到本期的重点:iOS in the Car。

据ABI Research最新的预测:到2018年,将会有接近50%的车载“信息娱乐系统”(Infotainment System)整合有Apple的iOS[1]。

整合!?如果仅仅是以“整合iOS”为目的的话,就未免太小看Apple的野心了。“整合”只是第一步,Apple想做的是,在未来,“接管”整个汽车工业的操作系统。这是一个技术门槛非常高(需要超强的软硬件匹配技术),市场总规模近万亿美元的产业(去年全球共生产6300万台汽车)[2],Apple焉能坐而视之?

汽车发展到今天,已渐渐超越了“代步而行”的简单观念,其整个工业的状况更远非一句“千古未有之变局”即能概述。如果说,航母是移动的军事基地,那么汽车,将会在不远的未来,成为每个家庭/个人的“智能移动数据中心”。现在,人们越来越习惯于“智能化”的交互功能、“人性化”的用户体验、以及“联网化”信息获取,这一切都将促使延续了数十年之久的嵌入式车载实时系统(RTOS)不可逆转地向全功能的“智能汽车OS”转变。

毫不夸张地说,现在的汽车都已经是“跑在代码”之上了。波音公司在2010年推出的“梦幻客机”(Dreamliner)大约包含了6300万行代码,而三年后的今天,一台豪华汽车里很可能就有1亿行代码[3]。(如此看来,码农无敌呀:)

RTOS的代码量已如此之巨,那么未来智能汽车OS的复杂度也绝对是O(N^P)级的。因为,智能汽车OS的本质,是一个基于多处理器的控制系统(microprocessor-based electronic control units)。例如,在当前的一些高档车型上,已经配置多达70~100个处理器了!要有效调度如此众多的处理器,实非易事。那么,智能汽车的操作系统又需要考虑那些关键方面呢?

其实,智能汽车OS的关键词与智能手机OS类似,依然是三个:安全、节能、和用户体验。但在每一个关键词上的要求与复杂度,都要比手机OS高出多个量级。这主要是因为汽车所独特的使用环境所致(户外、高/低温、高速)。例如,对于安全性的要求,除了传统的用户加密认证机制外,还应该考虑到实时响应(real-time)和容错性(fault-tolerant)的需求,否则,一旦响应迟缓、计算错误的话,就有车毁人亡的危险。

实时响应,可以用基于优先级的抢占式分时并行来实现;容错性,可以用多处理器同步匹配来实现,但这都是以增大功耗为代价的。如果,既要考虑实时、容错,又要兼顾节能(energy-efficient),那么对于操作系统的设计难度是极其高的,必要的时候,甚至会从底层处理器(CPU)上就加入相关的硬件优化设计,以弥补操作系统在软件层面的不足。

操作系统只能做到“线程”(thread)级的实时并行,等到检测出计算有误,再反馈给控制器,所需的时间太长了。比较而言,CPU可以在硬件层面上做到指令级(instruction),甚至时钟级(cycle-based)上的并行。并且,由于CPU上的并行容错大多是以晶体管冗余来实现,能够极大地减少CPU访问内存的次数,从而节省更多能量。这种并行容错、与节能兼顾的特点,是操纵系统在软件层面上无法实现的。

放眼科技界之天下,能够全揽CPU设计和OS设计于一身的,就只有Apple一家了。怪不得,有些科技媒体希望Apple能收购Tesla。从智能汽车OS的战略上来看,这并非只是个幻想。

其实,我自己又何尝不希望能有一台iTesla,果断泡妞又拉风。

(今晨,广州恒大足球队夺得了亚洲冠军联赛的冠军,媒体又把中国足球队往年的各种级别冠军罗列了一通,甚至连沙滩足球都算上了,但唯独没把中国科技界的机器人足球队算上。其实,2001年的时候,清华大学机器人足球队就夺得了RoboCup的世界冠军。没错,是世界冠军!)

[1]. https://www.abiresearch.com/press/half-of-all-in-vehicle-infotainment-systems-equipp

[2]. http://www.statisticbrain.com/cars-produced-in-the-world/

[3]. http://spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code

(6个打分, 平均:3.33 / 5)

OpenCloud 2013 . Hongkong . The CTO of Clouds

(没有打分)

SOSP 13 论文集

(没有打分)

Building LargeScale Storage SystemsPractices and Experiences

Tramadol

(没有打分)

科技一周~智能设备

科技一周~智能设备

2013/11/02

有人白头如新,有人倾盖如故。我与Trustlook[1]的Allan Zhang以及他的团队应该算是后者的“倾盖如故”了。上个周末,我们相约到位于Milpitas的靶场练习射击,去之前,我参加了他们的一个快速会议,以一个局外人的角度体会了Trustlook在创业阶段所特有的紧张的生活节奏。

创业,有时候,就像是一场戴着“镣铐”的舞蹈,资金匮乏、人员短缺、时间紧迫、还有那未可预知的市场,无一不加重了这镣铐的份量,而创始人则需要在有限的维度里极尽所能,换句话说,这镣铐越重,越能显示出他/她飞舞的才华。Allan已然站上了这个舞台,我所能做的就是立在旁边静静地等待出一个伟大的结果。

暂停闷骚,下面轻松一下,话题回到科技新闻上来。

本周,有一些可大可小的新闻罗列在目:

  • Tesla汽车再度起火,股价倒是没暴跌,估计火呀火呀,大家就习以为常了;
  • Moto宣布手机硬件开源项目Project Ara,以搭积木的方式来DIY手机,虽然这想法也不怎么新鲜,但总算是在被Google收购后做了件拿的出手的事儿;
  • 在San Diego,一女子宣称因为开车时佩戴Google Glass而被警察开罚单,网友大量关注,然而狗血的是女主其实是因为超速被抓停的,更狗血的是女主是某初创公司的创始人,专门开发Google Glass的应用,其公司因此而名声大噪,最最狗血的是“Google准备派出御用律师替她打这场交通官司”(最后一个狗血是我臆想的:);
  • 奇虎推出“360儿童安全卫士”,据说广告词是,“不给老公买儿童安全卫士的妻子,不是好妈妈 :<”,相当拧巴呀;
  • Google开卖Nexus 5,这其实不算新闻,各种曝光照片性能参数早在一个月之前就报道过了。

接下来,才是本期科技一周的重点:智能设备。

本周一,一个叫做“饿人鼓”(Hungry Drum Inc.)的硅谷初创公司被媒体大量报道。该公司开发出来一套非常可爱的教育类玩具Play-i,包含两个机器人娃娃,Bo和Yana[2]。Play-i的目的是启蒙两、三岁小孩子的编程意识!

Play-i采用众筹模式来募集资金,当前已有1267人预定,共筹得金额$28万美元,在筹募期还剩余25天的时候,便已超过了$25万美元的众筹目标。“饿人鼓”公司的创始人Vikas Gupta是硅谷一位颇具名声的连续创业,并且连续成功的程序员。Vikas曾创办过在线虚拟物品支付平台Jambool,后被Google收购。去年,Vikas离开Google,开启了Play-i的历程。

当然,现在就谈论Play-i的成功与否,还为时尚早,但我想说的是,Play-i正代表了一个大方向上的未来智能设备。

如果把未来的智能设备分为三种大类的话,第一类是技术难度最大的“深智能设备”。这类设备能够提供一个完整无缝、软硬俱全的人机交互功能,人们在使用的时候感觉像是和一个“真正”的人在沟通,简单说,就是“机器如人、人如机器”的最高境界。此类设备包括机器人服务员、智能助理、无人驾驶汽车、智能同声翻译器。

第二类是难度最低的“浅智能设备”。这类设备本身并没有自适应的“软”智慧功能,其本质上仍是一台微型计算机。使用者通过安装商业程序,来完成一些特定的功能,比如,购物、视频、上网,等等。每一个“动作”都需要使用者全程参与,并做出决策。此类设备包括,智能手机、智能电视、游戏机、流媒体设备、智能摄像头。

第三类便是介于上述两者之间的“半智能设备”,Play-i机器人玩具就属于第三类。这类设备的特点是,封装了一套底层的“智慧”功能,比如图像识别、物体跟踪,但把与人类的交互接口开放出来,请使用者通过简单的“编程”指令,来完成定制化的智能。 Pokies

Play-i是面向儿童的半智能玩具,它留给孩子们一个基于玩乐(Play-based)的图形“编程接口”,使孩子们可以通过类似画画一样的手法,来完成许多意想不到的功能。举例来说,一个孩子可以按照“我有一头小毛驴”的节奏画出一套“击打”程序,然后把Play-i放到钢琴前面,启动程序,Play-i就会弹奏出这首歌曲来!

现代硬件开源项目的蓬勃发展,使得小型创业团队,甚至单人,开发出“浅智能设备”和“半智能设备”成为可能,这在十几年前的时候,还不可想象。这其中,最大的功劳应归属ARM CPU的普及,把原本价格高企、产量有限,且被Intel垄断的CPU,从硬件开发平台的障碍里剔除出去。

当前比较流行的两个硬件开源平台是:Broadcom主导的树莓派(Raspberry Pi)[3],和TI主导的Beagleboard[4]。两者都提供了Android OS port,并有许多硬件扩展功能。比如,倘若你也想开发一个类似Play-i这样的设备,那么只需要再加一个摄像头模块,并利用OpenCV开源库提供的图像识别和运动跟踪功能,便万事俱备,可以开工了。

本期科技一周,从初创公司谈起,重点介绍了Play-i机器人,并简单描述了未来智能设备的分类。虽然“浅智能设备”和“半智能设备”的技术门槛已是“飞入寻常百姓家”,但对于“深智能设备”来说,小型公司基本上还是无能为力的,因为这里涉及到深度机器学习、大数据处理等技术,这都非常依赖巨型公司的海量数据平台。换句话说,深度智能,将是Google、Amazon、Microsoft、百度,这些巨头们拼杀的市场,我们就拭目而待吧。

 

 

[1]. Trustlook是一家专注于移动数据安全的初创公司,http://www.trustlook.com .

[2]. Play-i, https://www.play-i.com/ .

[3]. Raspberry Pi, http://www.raspberrypi.org/ .

[4]. Beagleboard, http://beagleboard.org/ .

(没有打分)

物联网和智慧城市的探索

(没有打分)

揭秘:华为智慧城市解决方案

(没有打分)