use a livecd, mount A , mount B(fdisk,mkfs if needed),
cp -rp /mnt/A/* /mnt/B/
grub-install on B, (ignore errors, grub is never easy to use)
reboot using B,
grub-setup when boot B successfully.
fix small problems if any(such as swap).
important: linux is easy to use only if you have good luck, so good luck.
Friday, December 24, 2010
Sunday, December 19, 2010
cpu benchmark
I benchmark with Intel Desktop CPU, Atom Netbook CPU, ARM embedded CPU
Xeon X3450 2.67GHz
E6500 2.93GHz
Atom N455 1.67GHz
TCC9800(ARM11)
with C, Java,Python
source java: .java .class C: .c Python: .py
result:
https://spreadsheets.google.com/pub?key=0AgxFH3jL86rEdHFJbVJHcWVta0tUZHdVaWNDaG9Cbmc&hl=en&single=true&gid=0&output=html
conclusion:
x86 = 4x(-10x) Atom = 50x(-100x) ARM
Java, C can achieve same speed. "Good" written python can be same speed, but "normal" written python is 500x(very) slow.
Power consumption:
not measured, but need not to say that ARM device should be much lower than x86 desktop.
I don't know performance per watt of them however.http://neoeworld.com/dl/fltvsdbl.java
Xeon X3450 2.67GHz
E6500 2.93GHz
Atom N455 1.67GHz
TCC9800(ARM11)
with C, Java,Python
source java: .java .class C: .c Python: .py
result:
https://spreadsheets.google.com/pub?key=0AgxFH3jL86rEdHFJbVJHcWVta0tUZHdVaWNDaG9Cbmc&hl=en&single=true&gid=0&output=html
conclusion:
x86 = 4x(-10x) Atom = 50x(-100x) ARM
Java, C can achieve same speed. "Good" written python can be same speed, but "normal" written python is 500x(very) slow.
Power consumption:
not measured, but need not to say that ARM device should be much lower than x86 desktop.
I don't know performance per watt of them however.http://neoeworld.com/dl/fltvsdbl.java
Thursday, December 16, 2010
Google面试归来战报
我坐上飞机回家。去的时候也查过不少Google面试的经验的帖子,我这次是被刷下来的经验或者说战报,也许对你会有所启发吧。
我这次的感受非常恼火。首先我面的是上海,不是MtV总部,面试官都是比我大几届的年轻人,没有真正意义上的大牛,所以我相信和在外国面是完全不一样的。
Google对算法要求比较高,是竞赛级别的,当他们说出问题后,希望你能立刻给出答到点子上的解决方法。所以这必须有熟练的竞赛的经验。因为作为正常人,得到一个问题以后,总会想出各种各样的方法去解决它,然后可能会在网上查一下类似问题的解法,然后了解一个最优或者比价好的解决方法。但是面试不行,你必须一下子答到点子。这有点像应试教育。你得看TopCoder上的题目,上面分类就有10多种,就对Dynamic Programming说,检索一下archive,你会发现即使这一类题目,也不是每题都相同的,你也无法保证每题能做的出来。
这里要扯一下他们给人的感觉,来应聘的人太多,录取比例绝对有1000比1的这种数量级。所以他们不担心你失败,人多的是。我认真的思考着他们给的题目,努力的答题,但是从他们看来,这解法并不是他们所知道的标准答案,所以他们就不很欣赏。然后有点面试员也不在当时反馈,我自以为做的还行,但是他们当场不说,心里想着“嗯哼,是吗。。。”,然后过一天通知我没有Pass。然后还说再准备个1年再来考吧。我靠,你以为你是高考啊,我高考失败了也绝不会复烤的。作为一个程序员,我有自己的价值和兴趣点,不会为进入一个公司来迎合你们的考试而修改自己对程序员的人生规划和定义。
所以对于面试你必须熟知TopCoder里的一些题目和算法书上的一些典型的题目。不过我相信并不是所以Google里的人算法都比我强。我甚至不信主考官自己我给他随便出个题,他能一下子打出重点。这他妈的需要运气。比如主考官是否欣赏你的为人的一种感觉。和一大帮聪明人在一起工作是一件愉快的事,因为大脑之间的碰撞能产生很多好的想法甚至产品,从而实现google所谓的改变世界。但是如果和一大帮聪明人研究人际关系组织关系的话,那就是地狱了。因为这次他们把我刷下来我从逻辑上非常不能接受。我没有亮但没有特别差完全可以给我更多考核的机会,让我败的也心服口服。
他们没有让我签任何对于试题的保密协议所以我觉得可以透露一点题目内容。
来面试的时候,第一个让我自我介绍,我说了一些其实简历上都有的。然后题目,说给一些字符串以及他们之间的大小次序,当然这次序不是字母次序,而是要让你求的满足这种状况的字母的大小次序。我不知道这是什么类型的题目。不过并不难,我给出一个解法,她于是问我要更优的。我知道我想出一个方法就很难在短时间里想出一个更优的。反正都是多项式时间,O(n^2)最多O(n^3)优化总是可以的,但数量级一样就应该算可以了吧。当然她给我一些提示。让我能更好的理解题目,并且不走的太歪。但是给更优的解法上并没有提示。
好吧,我写了一下解决思考,但是她希望详细的程序,于是我在纸上写吧。龙飞凤舞足足写了3页。就这样面完了。据说她觉得算法和coding还可以。但是我觉得她觉得我算法不够最优,而且和第二个主考官讲了。
第二个主考官再给我一个算法题,可能是让我有翻盘的机会,但是当时我完全不知道,是后来猜想出来的吧。
他上来问我在以前公司干什么事,然后有一次辞职的空隙期间干啥了。我觉得他的态度就和前一个不太一样,有些官僚的感觉。我不知道他想知道什么,于是认真的说了,但是他显得爱听不听,后来我想我扯的那些不是他想听的内容吧。我才说完,他显得不耐烦了,说“Ok,我们来进入正题吧”,我靠,我和你扯副题来着。
他的题目是算法题,说一堆人有关系,朋友的朋友是朋友,敌人的敌人是朋友。
说这里面有多少个朋友帮。做它并不难,但是难得是我不能定位出这叫什么类型的题目。顺便说一下,他们都不关心给的输入会产生无解的情况的分析,他们默认输入都是符合常理的。这就更显示了应试教育的学术性。现实中的问题其实不是算法和数据结构上的议题,也不是TopCoder上那些问题。现实问题是非常灵活的,丰富的,你很难把它框到竞赛所涉及的那些套路里。即使归进去了,你也等想想真是这样吗,这可是现实不是做梦。
好了,我给出了解。于是他让我给个更优的,显然我的答案和他的标准答案不太一样。
我以为他们都要详细的程序,于是认真的写了,写到一半,才到第2页开始,他觉得时间不够了,让我说大概思路吧,于是我觉得他和第一位的要求显然是不同的,又不合适了。这样在算法上翻盘的理论就达不到了。于是他说,还有15分钟左右时间我们再做一题。他说的其实是个迷宫问题,我有些纳闷但是我说用深度优先就可以。他说不是,是让你设计一个游戏。当时我头脑有点发热,而且没想到会在10分钟内考我design的问题。然后说迷宫里如果多一个杀手,那么怎么实现。我当时就是没领悟出来他要考我design,不然我总得说一个联机对战的设计方案。他说要用“面向对象”的方法来做,然后还让我画class图。我说我不会画class图,他说那你就写程序吧。我听到“面向对象”我faint了,不是因为我不懂或者不理解面向对象,我从十几年前学pascal的时候就开始听说并且体会它。只是懂行的人都知道,我记得前阵子一个C语言的大牛还批评程序员不懂真正意义上的面向对象,而是滥用,一些明明更适合用静态方法的。而对于高手,只有针对问题的方案,而最怕针对问题的XXX的方案。就像对项目,你要我实现什么都好说,你要我用特定的framework,比如说“用ejb3来实现这个网站”我就头疼了。就像你对杨过说,请你用“暴雨梨花针”打败那个人,因为“暴雨梨花针”是你见过的最牛B的一种武功,天下高手都应该会它。杨过笑了,令狐冲也笑了。而且对一个方案你也很难说这是面向对象的,或者"正确的"面向对象的。我看他也不诚心考我,也懒的给我解释了题目的意图。说就这样吧。等下一个主考官吧。可是我再也没有等到下一个主考官,我被毙了。
读者们这就是我在上海的经历,也许你能解读出一些东西。
经过这次,我对google的印象下降50%,从支持变为中立,原因是他们对人才的理解。我比较恼火,觉得该考虑不再用Gmail,Google search了。我可以用baidu,bing,任何别的。对第二个主考官我不知道还会不会见第二面,但是印象下降90%。
byebye google.
不过感谢google给我去的机票,但是要是能再给我报回去的机票就更好了。
我这次的感受非常恼火。首先我面的是上海,不是MtV总部,面试官都是比我大几届的年轻人,没有真正意义上的大牛,所以我相信和在外国面是完全不一样的。
Google对算法要求比较高,是竞赛级别的,当他们说出问题后,希望你能立刻给出答到点子上的解决方法。所以这必须有熟练的竞赛的经验。因为作为正常人,得到一个问题以后,总会想出各种各样的方法去解决它,然后可能会在网上查一下类似问题的解法,然后了解一个最优或者比价好的解决方法。但是面试不行,你必须一下子答到点子。这有点像应试教育。你得看TopCoder上的题目,上面分类就有10多种,就对Dynamic Programming说,检索一下archive,你会发现即使这一类题目,也不是每题都相同的,你也无法保证每题能做的出来。
这里要扯一下他们给人的感觉,来应聘的人太多,录取比例绝对有1000比1的这种数量级。所以他们不担心你失败,人多的是。我认真的思考着他们给的题目,努力的答题,但是从他们看来,这解法并不是他们所知道的标准答案,所以他们就不很欣赏。然后有点面试员也不在当时反馈,我自以为做的还行,但是他们当场不说,心里想着“嗯哼,是吗。。。”,然后过一天通知我没有Pass。然后还说再准备个1年再来考吧。我靠,你以为你是高考啊,我高考失败了也绝不会复烤的。作为一个程序员,我有自己的价值和兴趣点,不会为进入一个公司来迎合你们的考试而修改自己对程序员的人生规划和定义。
所以对于面试你必须熟知TopCoder里的一些题目和算法书上的一些典型的题目。不过我相信并不是所以Google里的人算法都比我强。我甚至不信主考官自己我给他随便出个题,他能一下子打出重点。这他妈的需要运气。比如主考官是否欣赏你的为人的一种感觉。和一大帮聪明人在一起工作是一件愉快的事,因为大脑之间的碰撞能产生很多好的想法甚至产品,从而实现google所谓的改变世界。但是如果和一大帮聪明人研究人际关系组织关系的话,那就是地狱了。因为这次他们把我刷下来我从逻辑上非常不能接受。我没有亮但没有特别差完全可以给我更多考核的机会,让我败的也心服口服。
他们没有让我签任何对于试题的保密协议所以我觉得可以透露一点题目内容。
来面试的时候,第一个让我自我介绍,我说了一些其实简历上都有的。然后题目,说给一些字符串以及他们之间的大小次序,当然这次序不是字母次序,而是要让你求的满足这种状况的字母的大小次序。我不知道这是什么类型的题目。不过并不难,我给出一个解法,她于是问我要更优的。我知道我想出一个方法就很难在短时间里想出一个更优的。反正都是多项式时间,O(n^2)最多O(n^3)优化总是可以的,但数量级一样就应该算可以了吧。当然她给我一些提示。让我能更好的理解题目,并且不走的太歪。但是给更优的解法上并没有提示。
好吧,我写了一下解决思考,但是她希望详细的程序,于是我在纸上写吧。龙飞凤舞足足写了3页。就这样面完了。据说她觉得算法和coding还可以。但是我觉得她觉得我算法不够最优,而且和第二个主考官讲了。
第二个主考官再给我一个算法题,可能是让我有翻盘的机会,但是当时我完全不知道,是后来猜想出来的吧。
他上来问我在以前公司干什么事,然后有一次辞职的空隙期间干啥了。我觉得他的态度就和前一个不太一样,有些官僚的感觉。我不知道他想知道什么,于是认真的说了,但是他显得爱听不听,后来我想我扯的那些不是他想听的内容吧。我才说完,他显得不耐烦了,说“Ok,我们来进入正题吧”,我靠,我和你扯副题来着。
他的题目是算法题,说一堆人有关系,朋友的朋友是朋友,敌人的敌人是朋友。
说这里面有多少个朋友帮。做它并不难,但是难得是我不能定位出这叫什么类型的题目。顺便说一下,他们都不关心给的输入会产生无解的情况的分析,他们默认输入都是符合常理的。这就更显示了应试教育的学术性。现实中的问题其实不是算法和数据结构上的议题,也不是TopCoder上那些问题。现实问题是非常灵活的,丰富的,你很难把它框到竞赛所涉及的那些套路里。即使归进去了,你也等想想真是这样吗,这可是现实不是做梦。
好了,我给出了解。于是他让我给个更优的,显然我的答案和他的标准答案不太一样。
我以为他们都要详细的程序,于是认真的写了,写到一半,才到第2页开始,他觉得时间不够了,让我说大概思路吧,于是我觉得他和第一位的要求显然是不同的,又不合适了。这样在算法上翻盘的理论就达不到了。于是他说,还有15分钟左右时间我们再做一题。他说的其实是个迷宫问题,我有些纳闷但是我说用深度优先就可以。他说不是,是让你设计一个游戏。当时我头脑有点发热,而且没想到会在10分钟内考我design的问题。然后说迷宫里如果多一个杀手,那么怎么实现。我当时就是没领悟出来他要考我design,不然我总得说一个联机对战的设计方案。他说要用“面向对象”的方法来做,然后还让我画class图。我说我不会画class图,他说那你就写程序吧。我听到“面向对象”我faint了,不是因为我不懂或者不理解面向对象,我从十几年前学pascal的时候就开始听说并且体会它。只是懂行的人都知道,我记得前阵子一个C语言的大牛还批评程序员不懂真正意义上的面向对象,而是滥用,一些明明更适合用静态方法的。而对于高手,只有针对问题的方案,而最怕针对问题的XXX的方案。就像对项目,你要我实现什么都好说,你要我用特定的framework,比如说“用ejb3来实现这个网站”我就头疼了。就像你对杨过说,请你用“暴雨梨花针”打败那个人,因为“暴雨梨花针”是你见过的最牛B的一种武功,天下高手都应该会它。杨过笑了,令狐冲也笑了。而且对一个方案你也很难说这是面向对象的,或者"正确的"面向对象的。我看他也不诚心考我,也懒的给我解释了题目的意图。说就这样吧。等下一个主考官吧。可是我再也没有等到下一个主考官,我被毙了。
读者们这就是我在上海的经历,也许你能解读出一些东西。
经过这次,我对google的印象下降50%,从支持变为中立,原因是他们对人才的理解。我比较恼火,觉得该考虑不再用Gmail,Google search了。我可以用baidu,bing,任何别的。对第二个主考官我不知道还会不会见第二面,但是印象下降90%。
byebye google.
不过感谢google给我去的机票,但是要是能再给我报回去的机票就更好了。
Subscribe to:
Comments (Atom)