the more you did, the more others want you to do. WTF!

俗话说得好,人善被人欺,马善被人骑。
曾经觉得,兢兢业业做好自己的事,即使不被表扬,至少不会挨批。
但是,事实不是这样。
比如两个人A和B。
A每件事都做得很快很好,偶尔一次出了点小差错,偷了点小懒,便会被指责。
B每件事都做得不三不四,偶尔一次出了点成绩,便会得到夸奖。
现实就是如此的残酷,让人不得不思考这究竟是为什么。
仔细想想,也对。
就好比巴甫洛夫的心理实验。
做好每一件事,便会条件反射以为每件事都应该做好,从而放大瑕疵。
反之,平时马马虎虎,便会条件反射以为做不好,偶尔一次做好了便显得格外突出而收获好评。

the more you did, the more others want you to do. WTF!

最近一个月part3

——————————————————实习——————————————————
去年10月开始在weaver mobile开始实习,今年四月突然因为身体原因就没再去了。一方面是身体原因,一方面是惰性:习惯了周末在寝室睡大觉,谁还想去实习呢?当然,这一切到了7月就完全改变了。
为什么要去实习呢?主要有两种可能:1.闲着没事,想锻炼自己;2.现金流出现了问题。鉴于我们实验室从来都会有endless的项目需要完成(所以老板们每月的收入相当多啊~),所以那仅有一种剩下的可能:没钱了。
其实倒不是说收入不多,之前一边实习的时候每个月也有2500的收入,但是往股票里面投了几乎所有的现金储蓄导致现金余额稀少,并且股票还亏损了近15000,加上从入市至今的通胀,实际亏损应该到了50%这种事情我会乱说嘛!反正就是现金流出现了问题,大抵只剩下2000左右的现金了(有钱的话我还想买块3T的硬盘啊!),所以就跑去实习了。然而实验室居然又要开始封闭了,真是冤家路窄啊!
所以,从七月开始,不在实验室的时间,我就去实习了。。所以在宿舍的时间就越来越少了。现在每天8点半出门,晚上9点半归,12点睡觉,基本就是机械性质的生活了。所以,好好攒钱吧~
——————————————————暑期封闭——————————————————
去年实验室搞了一次暑期封闭,要求9:30-21:30在实验室干活,一周六天,结果成效一般吧,结果今年居然还要搞。。看样子是牟足了劲要我们难堪了。一周六天啊!每天12个小时啊!去掉吃饭还要10个小时啊!一连四周啊!给的RA最多就够来回一次上海啊!去他妹的!
总之,很不爽,很愤恨,但却无可奈何。
——————————————————自行车·柠檬市场——————————————————
6月1日的时候自行车丢了,然后在大约28日的时候在BBS的secondhand版买了一辆二手车。当时就是脚踏板比较不舒服,也没在意。结果前天突然开始疯狂掉链子了,一天掉4次,第二天早上连着掉了2次,太夸张了吧!于是去燕东园修车铺,说是车的中轴坏了,还没得换,得报废,擦。。果然是柠檬市场啊,买家不知道商品的质量,卖家的定价与质量没有直接的关系。简而言之:被坑了。
于是上午在bbs发帖卖车,100元带锁(买的时候130不带锁。。),很快就有要的人了。然后中午顺利转出手。下午又上一次bbs准备删帖,结果发现一下多了15封站内信,全是要买车的orz,看来我的定价还是低了点啊~好吧,权当攒rp,希望买我车的人不要出什么事故就好。。
没车去燕东园很不方便,所以去清华西门买了辆新车,300元,感觉还不错,至少骑得快的时候没有噪音了,而且提速性能不错。总而言之,希望未来两年这车不要再被偷掉吧。。
最后还是重申一遍:BBS的secondhand是一个柠檬市场,买家知道的信息太少,很容易被骗。而我这样单纯的卖家恐怕还比较少见的吧。。
——————————————————暑期目标——————————————————
1.完成人肉系统的数据更新(已于两周前完成)
2.体重减到80kg以下(终极目标:75kg),然而,从7月1日至今,体重反而从82升到了84了orz我在干嘛呀!
3.好好锻炼身体:现在每天晚上跑五四,争取天天坚持(空气质量为轻度污染时暂停)
4.完成尽可能多的活,以及各种研究任务:赶紧发文章赶紧毕业啊!
5.好好赚钱,怎么着回家的路费得搞出来吧。。
6.养成良好的作息。前几篇日志也说了,现在每天12点准时睡觉,8点多起床,早睡早起身体好!

最后的总结:
暑假一个月,fighting!
p.s.上个月看了《灌篮高手》又看了《龙珠》结果其它一事无成这种事我会光明正大的说嘛?!

最近一个月part2

——————————————————毕业季——————————————————
一年前毕业时的种种还历历在目,一眨眼08级的都毕业完了。不禁感叹:时间飞逝啊!
一般都说旧的不去新的不来,可是在我们实验室就成了“旧的没去,新的又来”这样的囧境了。这样也好,正好可以让新来的小朋友见见学长最后一面(喂喂!他们只是去工作或出国了而已)。今年老田继续发扬“从娃娃抓起”的原则,从程设班上招了一个大一小朋友进组。本来还要招几个的,结果大家都不来:明显我们组的名声已经扬名p大了呀~正所谓“好事不出门,坏事传千里”啊~那这个小孩为什么还会上当呢?那是因为他是老田同学(大抵现在是高中教师吧)的学生。所以,就让老田收了。。(当然,不是张大同那种“收了”)。可惜了一个不错的孩子啊~去年也有一个小朋友大一入组,现在还在,但是完全没有去年那样的锋芒了。所以,我大三进实验室的时候,肯定也是锋芒毕露的吧~(让我自我满足一会吧~)
小孩子来了,老人们自然也要走了,也算是一种蛋蛋的忧伤吧。于是准备离别物品。从我入组开始,每每有人离开,我们都会准备一些纪念物(我是发起人哦~),前年录了视频,每人讲一段祝福的话,去年同样录了视频,今年有点懒,于是买了贺卡,让每个人写一页纸放进去。总之个人感觉效果还不错,明年是不是也来一次呢~
在硕士们拍完毕业照,吃完散伙饭之后,就算是真正的散了。说实话还是有点伤感的,因为之后就不会有一个随时一个电话就能被叫过来给你打杂的人了(咦?师兄原来是这个用处的啊~),也不能以“你看,xx师兄这个月也没做什么,所以,我没做什么也没什么吧~”打马虎眼了,未来的两年,那我只能让同级的博士小妹妹替我挡着了吧。。
学长走之前收拾行李,于是获得了如下的道具:味多美卡一张,邱德拔卡一张,xx会员卡一张,书若干,草稿纸若干,代码若干。总之算是收获颇丰了,一并获得道具的还有那个博士小妹妹。因为到目前为止还没有直系的学弟出现,所以当时就想着:“我毕业的时候,也把东西送给那个小博士妹妹吧~”,所以说,读phd是要有勇气的,因为和你一起进来的人会早早的走掉,然后就没有然后了。。
——————————————————实验室搬家——————————————————
硕士毕业之后的第二天,我们组就从理二搬到了燕东园,就是北大附小北面的北大幼儿园的北面。。于是从宿舍到实验室的距离硬生生x2,骑车都要10分钟了。整理东西,搬去燕东园。结果因为施工改造时未能预料到我们组的用电问题,所以一直跳闸。因为所谓燕东园,其实和燕南园类似,一栋一栋小房子,有点别墅的感觉,之前也只是住人而已,现在突然改成了实验室,供电当然不行了。于是实验室花了10万大洋从供电线主线上拉了一根到实验室,80A的三向供电啊,一个月电费3000+啊。所以说,费电的不一定是宅女,一群宅男消耗的电能远远大于【哔————】。于是改造了一周,直到给每一路都放上单独的电闸供电问题才解决(施工队:你们服务器太厉害了,瞬间电流超过40A有木有啊!40A也就是10KW,也就是10个空调的功耗了)。总之,经过一个星期的折腾,供电问题终于解决了,然后,就开始封闭了。封闭你妹啊!
关于封闭,又可以弄一个长篇大论出来,这里暂时先略过。
——————————————————未完待续——————————————————
居然又12点了,现在码字的速度完全不行啊,半个小时才水了1200个字,太弱了有木有!!明天一定要modo modo【哔————】

最近一个月

自从上次的日志至今,已然有一个多月的时间了。这期间多次有写日志的冲动,但是要么空间连不上(美橙你在想啥呢!),要么看了一集动画就想睡觉了(所以今天忍着没看动画直接写日志了么orz),总之就是一个字:懒。今天早上做梦,居然梦到了自己在写日志。。好吧,看来的确是该写一点了吧。(所以一下就码了这么多无关紧要的文字真的没问题么。。真的不是在凑字数么。。)

一切,都该从6月说起。

——————————————————大作业、考试——————————————————

其实六月的生活还是挺单调的:写大作业、复习考试、考试、批考卷(真的不是批我自己的考卷啊!)、计算分数(同样不是给自己打分啊阿鲁),磨磨洋工,然后就到了7月。

大作业主要是OO和高体的,这两个大作业都还挺水的,两天就搞定一个了吧,于是也没什么好说的。唯一想吐槽的就是PKU_Modeler的工具,是OO大作业必须使用的绘制OOA和OOD图的工具。用着很不顺手,去看了网站介绍,居然还是一个项目,而且2010年初就结题了好像(因为最后更新是2010年1月),然后去年大作业说每发现一个bug可以加1分,结果今年都不让加分了,估计是bug太多这样每个人不用考试就能OO满分了吧。。总之,这么烂的工具还是第一次看到。

之后复习、考试花掉了一周时间。高体复习的时候有http://gaoti.doukao.com/ 这个宝典网站,而且还有程老大整天盯着你(还有人把程老大头像放到ipad上整天供着这种事情我会乱说嘛),总之大家复习都很卖力,结果考题依旧和往年类似。。说好的50%变化呢?不过真要变了50%那估计很多人就要挂科了吧。。

——————————————————批考卷——————————————————

考完高体也没闲着,去改了程设的考卷。因为今年B卷(全是作业题)是老田出,结果老田就让我出,于是我就去改了。。从早上9点一直改到下午3点,和5个程设老师一起,压力有点大。。本着对学生仁慈之心,给分都很高。因为自己改过考卷所以知道批卷子的时候要点是啥了,下面汇总一下:

1)如果你的考卷是开头改的几分,那很抱歉,会从严判定。

2)一般只要写了一些字的,都会给一些辛苦分。

3)要学会突出重点,当然,前提是你知道答案。。比如画个框之类的,会让改卷子的人觉得很舒服,说不定就不看你剩下的p话了(虽然可能你剩下的写的都不对)。如果你画了个框,但是框里面的内容错了,那么哪怕你边上写的都是对的,也很难博得改卷人的分数。

4)字迹写得好坏差别不大,特别是计算机的考试,因为程序员大家字写得都差不多烂。。偶尔发现几个字写得漂亮的,反而会吸引更多的目光,反而容易多扣分。。(一般都是扣分而不是找点给分的)

5)不要写容易引起歧义的话,也不要写很拽的话。比如有个小孩写:“按照行存储的顺序倒序排列”,结果老田一看“顺序”就直接x了。。关键字啊关键字。还有小孩在scanf的时候用了正则表达式,老田表示不懂,所以x了。。所以对老师水平的正确判断也是一个问题。

上面是第一天改卷子的感想。本想着改卷子告一段落了吧,结果第二天另外一个老师的电话就来了:“你告诉xxx他B卷100分总评也100分?他B卷不是才91嘛,你让我怎么给他100嘛!”好吧,记错了。。所以不要提前告诉学生成绩,这是实话。

不过,那小孩的答案都是对的,后来我去重新判断了一下B卷,300多份卷子,把老田改的部分全部重新判过,总计加了600分吧。。最多的一个人从85分之间变成了100分。。主要是没跟老田说清楚具体答案,只给了一个参考答案,于是正确的也给判错了。所以。。得出的教训是:

查卷成绩只会变低嘛?不一定。这主要是老师怕麻烦,所以跟你说成绩只会低不会高。如果对自己有信心,完全可以查卷,说不定能要回来个5、6分来着。

于是,造成了EECS史上第一次大规模的改分行为,因为有些班成绩已经登录dean了,只能撤下来,重新计算,重新登。闻所未闻啊,也算开了先河。

这样的结果是:程设老师一致决定明年不考B卷了(虽然直接原因是:有小朋友在人人发状态吐槽:“ 做程设B卷的感觉就是:你昨天去学五吃饭了,请问当时你是排在哪条队,刷的什么饮料,去哪边拿得筷子,上楼坐的哪个位置,吃饭用了多长时间,吃饭的时候是怎么吃的,以及楼下收盘子的大妈长得什么样。。。。。。”)。

另外,老田班程设优秀率又超了,这次给了53%,比去年的59%要好一些了,不过还是很imba啊,这样下去明年老田程设又要有很多人选了,不过明年反正不当助教了,所以无所~

对了,最后的给分助教这边权限很大,而且作为老田班三个助教的老大,最后的成绩完全看我的心情。。所以,与助教搞好关系,其实也是有用的。。大概有3-5分的差别吧。不过如果你是个男生,而助教又不是个gay的话,当我没说。。

所以其实改卷子给成绩这块之前一直想写日志的,结果现在只能作为一个模块了。

——————————————————毕业季——————————————————

写着写着居然12点了,因为保持每天早睡早起的好习惯,所以就“未完待续”吧~明天写个part2~

伪物语

借用了一个动画的名字,但这篇日志却并不是说观后感的。
而是说我这个人。
该怎么评价我自己呢?得出的一个结论,就是伪物语。
伪硬件控:作为一个学CS的,对于硬件有一定的偏好也是很正常的。然而,却是伪的。也许我可以头头是道说出这个显卡不行,这个CPU性价比低等等,但是距离真正的硬件控,那些发烧玩家而言,却差了很远。
伪火车迷:从小就喜欢交通工具,比如还记得6岁的时候夏天每天早上5点起床去看家门口128路公交车终点站的发车情况,也总是可以算准头班车的时间。喜欢坐火车,然而,仅此而已。对于真正的火车迷而言的运转,却是一次也没参与过。
伪数据控:喜欢收集数据,经过我硬盘的数据很少有删掉的,特别是动画、电影。然而,却不是真正的数据控,电影、动画的存量相比那些收集控而言只是零头而已。
也许我做过很多事情,但终究没一样做到极致的。比如体育课,明明选过棒垒、击剑、地板球、素拓,高中学过网球、乒乓球、羽毛球,真的跑去打了,估计只有被虐的份。
比如写过c++,写过java,写过php、vb、js、object-c,编过android、CUDA、MPI、hadoop,却终究没有一样精通。
比如偶尔打打游戏,玩玩NFS,开得过电脑,却总也没法取得全部的白金奖杯。
比如小时候就开始打牌,到现在也就初学者的水平,牌好打得一般,牌差就一泻千里了。
比如搞竞赛,化学看上去还不错,终究只拿了个市三等奖,而且只不过是安慰性质的。
比如喜欢动画,看过不少,却总也没法像元火众一般能够聊得起来。
不胜枚举。
所以说,到头来发现,自己终究不过是个伪物。什么都接触一点,什么都拿不出手。
也于是乎,写下了这什么都不算的日志。

深度优化:学习SSE指令

程序跑的太慢怎么办?之前我给出的答案是:用x64环境编译执行程序;用多线程、多进程模式;用CUDA加速。而现在,又有了一种新的解决方案:用CPU的SSE、SSE2等指令集。

因为处理图像数据时大量用到浮点数操作,而且都是一连串一起使用的,所以,用SSE2加速可以取得较好的效果。参见http://dev.gameres.com/Program/Other/sseintro.htm的相关代码,自己模仿了一下,发现很容易写:

int calc_simi(float *feat)
{
int i,j;
float *a,*b,t;
float min_dst = 99999;
float dst;
int id=0;
for(i=0;i

其中dic是一个二维矩阵,目的是求出当前feat向量和二维矩阵中哪一行向量的差最小,返回这个id。calc_simi是普通的实现,calc_simi_sse是利用sse2指令集实现的。

废话不多说,看时间测试时间:

x86 x64
precise 1224 371
fast 301 302
precise_sse 146 114
fast_sse 148 119

其中,precise和fast对应编译器选项当中浮点数精度要求(因为发现结果木有差异。。),_sse代表利用了sse指令集(编译器优化当中不要选使用sse2,这样会变慢……),x86和x64代表编译环境,由此可以发现,sse会快,而且在x64下比fast浮点运算还快了2.5倍左右!因为sse2每次处理4个浮点数,所以最多也就快4倍,效果很显著了~

so,最终版的优化看来会结合sse2、多线程技术吧(因为CUDA和sse2冲突,而sse2稳定……)