leo和hchi的倒排索引的文章被接收了!

  昨天起的就很早,一整天都在会场上偷着和瓶子双人编程;今天上午又要去对外交流,所以起床比昨天还早;下午把曙光5000A上的pFind并行版内核代码升级做完。Aho- Corasick算法代码遇到BUG,拖住hchi哥帮忙调试,天黑才放他走。我和瓶子等到很晚,测试完全正常才去吃饭。回来路上感觉特累,地铁里站着,心脏开始不规律地跳。21:00到家给hchi哥打电话,他还在路上呢。   刚收到邮件。leo和hchi的倒排索引加速pFind蛋白质搜索引擎的论文被Rapid Communications in Mass Spectrometry接收。从07年痛苦摸索逐渐清晰,08年代码重构海量测试,09年申请专利反复投稿……倒排索引技术的研发一步步走来,纠结很多,故事很多,做得真很出色。俺虽然只是端茶送水摇旗呐喊的第三作者,同样超有成就感,万岁!这也是dq老大的IndexToolkit之后,pFind搜索引擎在索引算法上的又一个重大进展。   前一阵hchi很疲惫,有次开会时私下和我聊天说:早上咳醒后,觉得自己快死了。最近两天他连续有deadline,我总担心他被拖垮。生活很公平,终究会在你最需要的地方,设置一个加油站点。去年1月7日刚好这篇论文诞生,颇符合hchi这个宿命论者的观点。   我和瓶子的Rapid Communications in Mass Spectrometry投稿遇到点小问题,编辑粗心,把其他论文的审稿意见错发给我了。大概是圣诞节心不在焉吧。争取在一期期刊上,同时出现pFind 蛋白质搜索引擎的两篇加速文章,互相印证,那可就帅了。   不管怎么说,大家注意身体。健康是1,其他的都是0。还要走很远,把pFind做成。

招聘、求职和早恋

  前两天的千核测试太累,测试报告发出去,老婆大人命令在家休息了一天。   先帮朋友发个招聘广告。香港某大学正在筹备的文本挖掘和推荐算法实验室,招聘熟悉学术圈氛围,有软件工程经验,能带人做产品的工程师。这个实验室是与企业合办的,其目标是把学术研究成果向市场孵化。实验室负责人是从pFind组出去的帅哥leo。待遇不错,尤其是与国内相比。如果嫌香港租房比较贵,可以在深圳住。嗯,如果不是因为年纪太大,在北京成了家,俺是一定投奔的。有兴趣的同志们赶紧发简历到topmathchina at gmail。要快哦,亲。   言归正传,最近招聘的话题在42qu和各个牛人的Blog上大热。例如刘未鹏刚发表的Blog《怎样花两年时间去面试一个人》 ,堪称经典。作为资深人贩子,我以前也在Blog上议论过别人的是非。类似的,挑灯看剑也在BLOG上叹息过豆瓣招人不易(这篇BLOG现在被隐藏了,如果你真想看,用Google Reader)。招人的机构找不到靠谱的人,大量求职的年轻人又在纠结郁闷,出现这种局面责任在教育机构。   反过来说,总有人能超出环境均值成为Outlier。前两天蓝色宝石聚会,rainbow学长愈发内敛强大,喜欢把他的经历讲给年轻人。rainbow刚来北京上大学时,特困生,家里为了凑足学费历尽周章,去中关村软件公司打工,开电脑的电源按钮都找不到……可一年以后,他给家里汇回去1万元,蓝色宝石筹备创业时,他说没问题,现在的积蓄够自己两年的生活;到了毕业,打印出来的求职简历比别人厚四五倍;进入老牌国企,很快成为几十年来最年轻的处长;他在北京买了房子,把父母接来,结了婚……最关键的是,每次见到我们这些朋友,他还是那个真诚、温和、质朴、大度、勤奋、踏实的rainbow始终没变。无论提供的教育质量怎样,毕竟是大学,有很大的自我发展空间,年轻人首先应该有自己的行动。   关于大学教育和创业,42区上有个16岁小朋友前两天发帖子“为什么我选择辍学创业?”。对这件事,每个人有自己的看法。求职和找对象一样,想找到可以托付的事和人,先得做不少功课。说到这里,跑个题,有个15岁小女孩误入邪恶的42qu,问:“我这个年纪、要是喜欢上了别人该怎么办”,joyfire大叔是这么教坏小朋友的。     早恋挺好,早点体会一些悲欢,了解人生的真相。总比变成剩女了还不了解异性的基本特质好(北京城里这种女孩还真多,周围认识好多有车有房却没谈过恋爱的30岁白骨精)。     不过,要把握几点原则:     1、保持悲观,概率统计显示,中国大约有3000-5000人是非常适合你的The one,这个人在中学就出现的概率比被雷劈中的概率小一千倍以上。     2、相信自我感觉,保持勇气。勇气有很多种,例如向一个人早点承认自己不喜欢他,让彼此尽快解脱的勇气。     3、学会自我保护。世界上真的有不少烂人,得不到就伤害。保持冷静而强悍,不要轻信,学一点跆拳道。

2010年BLOG列表

joyfire的博客从spaces live搬到这里  pFind Studio 2.6发布  欢迎贡献自己PC空余时间,帮助CAS@home计划  创业者加油!  SD2.0和中国Cocoa移动开发者大会  列书单.2010.12.8  去上海参加“软件开发2.0大会”  生物信息和云  42区、话剧和书单  控制思想  pFind引擎的第四代索引模块  计算蛋白质组学研讨会和大S结婚  即将到来的pFind Studio 2.4.2版,还有CNCP2010大会  流水帐.2010.10.4  零零碎碎  专利、商标和比比西T恤  竖起耳朵听  话剧和哀悼  Sector&Sphere  列书单.2010.7.29  pFind新版、生日  美国能源部长在Nature上发表的学术论文  终于买到了《独唱团》  章文嵩的技术报告  列书单.2010.7.1  马尔代夫  断网断电话一段时间,还有pFind的千核并行进展  我在kanrss上的帐号是@joyfire  我结婚了  列书单.2010.5.28  pFind集群的论文正式发表  回到北京了,上来敲几句闲话  丽江流水帐  pFind Studio 2.4开始下载了!  头晕和踢踏舞  流水2010.05.05  这帮悲剧的RCM编辑  朝圣大会里的中国  Beta技术沙龙:Go语言  列书单.20100421  Ru27机器人穿越大西洋  笨功夫和气场  pFind并行版论文接收了!  刺猬的两个偶像  容错、书单、pFind和pNovo的国际初show  CUDA、婚礼和历史  论文最终稿submit了!  pFind引擎内核建立Trace机制  […]

去Intel测试、下一版的昵称

  连续加班。筋疲力竭,死扛,晚上总做噩梦惊醒。今天全天开会,16人次讲PPT。晚上聚餐,算是告一段落了。   前天应邀去Intel公司测试pFind并行版。是国贸旁边的那个实验室,就在央视新楼对面。公司的落地窗正是看焰火的好地方。ch博说,09年元月十五,他就在办公室。   pFind表现正常。因为时间所限,测试参数不能设置得过“重”。以前提过,随着并行规模的扩大,pFind集群开始出现I/O密集型应用的特点。下一步的千核集群,Master节点应改成异步模式,很多步骤要用MapReduce。    从08年底开始做pFind并行计算,逐渐加深理解。现在看来,要兼顾“减少流程冗余”,“均衡负载”和“提高I/O效率”三个要素,才能获得好性能。其实,明确这三个问题,比解决它们更重要。如果RCM论文搞定了,就在BLOG里写写我们的解决方案。   这次跟着高手学到不少。比如以前不知道用make -j参数,每次编译ACE,都得用三四十分钟。再如这次ch博推荐的paratera.com工具,对分析集群实时状态很有用。   下一版的pFind内核还没规划,但是已经开始琢磨“昵称”了。按照我们的惯例,需要是科幻或动画角色。我强烈要求用Leonopteryx,《阿凡达》中的红色大鸟。

里程碑收尾,论文,雪季开始,理想主义和Hadoop的调度算法

  里程碑接近完成。这一版pFind Studio除了增强搜索引擎内核,也针对用户易用性进行了改进。需求列表很长,但很多问题需要微妙的权衡取舍,没想清楚之前不宜动手。因此在有限时间内,主要是集中解决几个重点问题,减小智力负担,提高用户体验。好几个月没上一线写代码了,都有点生锈。   leo和hchi的论文一年内被拒两次,终于有希望了。加油!工业级软件、发明专利、国际期刊……一个都不少,科研创新的过程很完整,赞。然而,zhch牛人的新一代后缀树组索引算法,又将取代pFind内核里现有的倒排索引。把前浪拍死在沙滩上。我的论文还在under review。   最近心情略好,给自己买了条新的单板滑雪裤,去乔波玩了两次。今天听说出事故了,中级道关闭,警察来来回回勘察。阿弥陀佛,大家还是要注意安全,科学练习,初学者最好请教练,不要傻大胆强行冲坡,练单板的人要戴好头盔和护具。自从08年初受伤以后,滑单板变得很谨慎。今年春季dmq老板委婉地说:“忒平稳了”;雪场教练的评价就直接多了:“专拣最没激情的那种动作”;现在,又被总雪龄少于10小时的小朋友在初级道上鄙视了。没办法,十年怕井绳,三十岁的老胳膊老腿了,安全第一安全第一。   不过,静下心来,就把左右脚的落叶飘和换刃都练熟了。认识了一位不错的专业教练。原来八一队练冬季两项的。年纪很轻、人很帅、脾气不错、技术当然很牛。只可惜受伤提前退役了。我打算上难度的时候,就雇他教一天。   最新《程序员》里有一篇张岩的自述。讲到考研和求职,讲到亲人突然去世,讲到公司重组,讲到challenge和沟通。文字很朴实。有些话值得年轻人体会,例如“做工程师永远要记住细节是魔鬼,只有在细节上充分积累,技术上才有成长的空间”;又如“请保持理想主义,相信我们做的事能改变生活。我们每天起床和上班,不是为了赚钱糊口,而是因为兴趣和使命感。”   技术上最引起我注意的是《Hadoop集群作业的调度算法》,正好是下一步工作的重点。豆瓣王守崑的《走进个性化推荐系统》讲的是近期热点,也很有意思。(Resys召集聚会,就在豆瓣公司举办,可惜报名晚了没抢上名额,哇哇哭)

4月1日节日快乐!

  袖子早上晕晕呼呼没睡醒时,就被人家骗了,一个“喵”短信发出去3秒钟以后,才反应过来。   leo接到老姨电话:“我就在你们楼底下呢,赶快出来”,他慌忙跑下去,找不到人,打电话,老姨:“读书读傻了”   午饭吃驴肉照火烧,老板娘说我给的50块是假币,一下蹦起来:“不可能!”。她得意洋洋:“高科技人才咋这好骗”。   几个喜欢的创业网站里,只在BlogBus发现了这一条:“即日起增加‘人脸识别功能’——登陆个人Blog页面需经过面部识别进行个人身份验证,才能访问自己的Blog,未经识别的Blog将被限制访问。”   豆瓣反而一本正经发布了新改进:“作为豆瓣电影的入口,目前的电影首页已经不能满足这个需求。于是我们做了一次新的改版”。嗯,这是学当年Google在4月1日发布Gmail。   笨蛋们,节日快乐!

《高卢战记》和《内战记》读书笔记

  元旦假期有机会静下来读书,随手写点笔记。   《高卢战记》和《内战记》(还包括《亚历山大里亚战记》、《阿非利加战记》和《西班牙战记》这三个小战记)以前都是单独看,只浏览战争过程,这次连起来对照,找到不少有趣的细节。   只要看地名,就可以把凯撒征服的外高卢地区与此前就臣服于罗马的内高卢行省区别开。外高卢地名都被《高卢战记》里提到过的反叛部族的名字所取代,例如, 长发高卢Parisii族的城市Lutetia,今天叫巴黎(Paris);而内高卢的城市大多还沿用原名,例如,内战中支持庞培的港口 Massilia,其实就是今天的马赛(Marseille)。   特意关注凯撒麾下的将领和军团。颇有戏剧性:   在《高卢战记》的七年战争里,Labienus始终是凯撒的心腹。他比其他副将多一个“代理司令官”的称号,常在凯撒外出时,掌管全军和行省大权。然而一到《内 战记》,Labienus就突然出现在庞培阵营里。之后的《亚历山大里亚战记》、《阿非利加战记》和《西班牙战记》,从意大利、希腊、阿非利加到西班牙, 庞培死了就追随小庞培,内战由始至终,他一直是凯撒的劲敌。很想知道Labienus和凯撒之间到底发生了什么?可惜凯撒每次提到Labienus,似乎 都有意一笔带过。   在凯撒手下部队里,第十军团跟随时间最长,纪律最严明,战绩最显赫。《高卢战记》里,有次士兵因为害怕凶悍的日耳曼人 而不肯进攻。凯撒发表讲演,责备他们忘记誓言和荣誉,“就算只剩第十军团跟随,我还会继续前进”。《阿非利加战记》一开始,由于手下大多是新兵,凯撒收缩 阵型密集防守,而前面说的那个投奔敌营的Labienus率领骑兵冲锋,他不戴头盔在战阵最前列来回奔驰,激励士气,嘲笑凯撒的新兵。有个士兵 喊:“Labienus,我是第十军团的老兵,你应该还记得我是谁”,摘掉头盔让Labienus认出自己,然后猛投轻矛,扎死了Labienus的马。   (这场景适合拍电影,Labienus在高卢战争时经常指挥第十军团,在场无论将军士兵一定都有一番感慨。)   还有个叫Trebonius Caius的副将,《高卢战记》后几年频繁登场,无论西边登陆不列颠岛,还是东边深入日耳曼森林,都立下汗马功劳。他擅长阵地战,《内战记》里,就是他指 挥三个军团,负责围困前面提到的Massilia:攻城塔楼修得比碉堡还高,防水防火防滚木的盖棚日夜掘进,挖塌无数城墙角……   参与围困Massilia的还有海军指挥官Brutus,他两次击退了占压倒优势的敌方舰队。   然而,内战结束后,凯撒正是死于Brutus的行刺,Trebonius Caius是阴谋的主要策划者。   (补:又查了Wikipedia,发现行刺凯撒的那个Brutus似乎和这个海军指挥官不是同一个人,可能《内战记》译者搞错了。《内战记》的翻译质量比《高卢战记》差,任炳湘81年患癌症去世,没完成全部工作,继任者的能力和责任心有问题)   打算再买更多的有关史书。尤其是凯撒政敌一方的著作。自己人免不了为亲者讳。例如《亚历山大里亚战记》基本没提凯撒和埃及艳后Cleopatra的八 卦。实际上,埃及战争结束后,凯撒把东方各行省的告急文书扔到脑后,陪着Cleopatra坐游艇沿尼罗河一直游历到埃塞俄比亚边境,泡了三个月才出发。

列书单2008.12.28

  回到北京以后,陆续参加各种年终总结会。剩下的就是在家休养。昨天去还房贷,顺路逛了逛中关村图书大厦。买了《绿野仙踪》、《高卢战记》、《漫长的告别》和《蓝血十杰》。          《高卢战记》一直在找,这次终于拿回来塞书架。小时候看过《绿野仙踪》前三部。怀念与稻草人、铁皮人、胆小的狮子一起旅行的奇妙时光。《蓝血十杰》和一般的经管书籍的有点区别,没有描写像神一样完美的伟大形象,倒像是盖棺定论前的回顾和审判。   最近有空看美剧,刚把The West Wing第一季看了一半,很喜欢幕僚长Leo McGarry这个角色。总统在去议会发表国情咨文前对留在白宫的农业部长说:“你有最亲密的朋友吗?他比你聪明吗?你可以把自己的生命托付给他吗?那么这个人就是你的幕僚长”。 

验收通过

  憋了好久,今天出来吓人。刚刚抄送全组一封邮件: 各位:   pFind 2.1 Alpha 1版刚刚通过验收,代码上传至SVN。测试性能大大高于计划指标,我们在短短4周内创造了奇迹: 彻底重写内核引擎,15个模块,近三万行C++代码,开发中规范执行code review或pair programming; 完整实现了两种不同的鉴定流程,其中流程2与pFind 2.0的鉴定结果进行了仔细对齐验证; 在shark服务器上,对等条件下,鉴定速度是pFind 2.0的3~5倍,接近Mascot; 流程1和流程2均初步实现多线程,4核机器上4线程比单线程方式加速比接近2.85; 创建索引速度有了接近百倍的提高,大大超出SEQUEST建索引的速度; 已测试的索引规模,达到pFind 2.0容量上限的10倍,也超出SEQUEST索引规模上限; 移植到Linux下,为将来和曙光、龙芯的合作打下基础。   感谢hchi、leo和llq的努力和热情。这是一次接近完美的开发经历。祝大家假期愉快。 joyfire  2008.4.30           从上午的述职报告开始就不断有人问,哪些招数带来了如此明显的性能改进?其实都是纯粹的工程手段,而算法流程方面并没有应用激进的创新思路,基本沿用了pFind 2.0里的成熟方案。

加班,走神

  连续参加考核、汇报和总结,没空写代码。昨天的会史无前例,漫长的七个小时,23:30才到家。   据说我们开会很像吵架,思路稍有差池,立马被乱棍打死。leo大虾再次显示传说中的“老师潜力”,在3小时的讨论中,即使下面闹成一锅粥,仍然心平气和,硬是让每个人听懂了老版索引那些恐怖的数据结构和读写流程,并接受了他的重构方案。   经过一个月头脑风暴,pFind下一版慢慢清晰了。这其中SD2China对我整理思路有很大帮助。   还有最后两个features,要赶在下周一功能冻结前加进去。所以今天来加班。但实在没状态,于是索性放松下来处理些杂事:上网听音乐,收发邮件,整理代码,讨论架构,翻译Tina文档每天计划的段落……   冬至,别忘吃饺子。