代码review

[原写于2012年1月]

我: 我们有两台机,都是一样的 xeon E5620 2.4G 的CPU,但是,跑算Pi的程序,5000个迭代,一个机器跑48秒,另一个只需要32秒
coly:CPU核数一样吗?
我: 一样的。不一样应该没关系,我这是单进程。
coly:内存速度不一样?
我: 就一个算Pi,总共就占8MB内存,还没有CPU的L3 cache大呢​
coly:要不这样,你写个死循环加法,我们看看两边的速度是不是一样

(公司的盒饭送来了,晚饭时间)

coly:你先吃,我来写吧....一个死循环我应该还是能写出来的....你要review我的代码哟~
我:....

(coly把代码写出来了

int main(void)
{
int a=0;
while ( a < 0) { a++; } return 0; } ) coly:为什么我运行瞬间就结束了? 我: 应该是编译器把你的死循环优化掉了,因为a这个变量在整个main函数里都没有被其它地方使用 coly: 喔~~,我改改,在结尾加个printf把a打出来 (程序一运行还是瞬间结束) 陈同学:(看了看代码)是不是加法太快了,看不出来?咱们加几个嵌套循环 coly: 好~ (程序还是瞬间结束) coly: 怪了....靠,a的值是0啊,根本进不了循环! 我,陈同学齐声:喔~~~ coly:你们两个!怎么review代码的! 后记: 死循环程序写出来了,两台机器CPU的计算速度确实有差异,原因最后由柯旻同学揭示:
跟华为2285机器的cpu 频率控制有关
CPU不开启cpuspeed就是1.6G的主频,需要

/sbin/modprobe acpi-cpufreq
echo ondemand |sudo tee /sys/devices/system/cpu/cpu13/cpufreq/scaling_governor

后,主频才上到真正的2.4G

治咳嗽

[原写于2012年1月]

去年冬天的时候,我去附近的医院看病。医生给开了500多块的药,就为了治一个小小的咳嗽。

上个月又有一点咳嗽。正巧团队活动,出去吃了一顿金钱豹。晚上回到家。

我:我感觉咳嗽好多了
爸:好像是,你进门这么久了,一声也没咳
我:看来吃金钱豹可以治咳嗽咧
老婆:呵呵,200元治一个咳嗽,比医院还是便宜多了

1 12 13 14