暖冬小技巧,不用暖手宝!

前言

本文大部分内容转自我司邮件,感谢 xxx、xxx、xx、xx 等人贡献

最近懒癌复发,又懒得写博客了,今天翻到公司邮件终于看到一个扯蛋的话题,随即转来

随着冬季的来临,温度骤降,供暖还有十好几天。我等码农的双手饱受刺骨寒风的摧残,正好今天看到了我司邮件,提供了各种版本的取暖方法

准备工作

  • MacBook 一台(木有的可以来投我司简历,发个新的给你)

开干

想用电脑取暖,无非让 CPU 和 GPU 高负荷运转就行了,要让 CPU 高负荷运转,疯狂运算就行了,什么 while(true) 啊, 1=1 啊,能上的都上。至于 GPU,疯狂绘图就行了。

JS 版

贡献自 fachuan.bai 同学

  • 第一版
1
2
3
setTimeout(function () {
ctx.drawImage(src, 0, 0);
}, 1000);

发现不给力啊。。苹果本子似乎散热做的不错,风扇直接开转发出正正凉风,反而感觉本子薄凉薄凉的。负荷也不高

  • 第二版
1
2
3
4
5
setTimeout(function () {
while (true) {
ctx.drawImage(src, 0, 0);
}
}, 1000);

来个猛的

  • 最终版
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<head>
<title>Hot</title>
</head>
<body>

啊,好热......

<canvas id="p"/>
<canvas id="p2"/>
<script>
var ctx = document.getElementById('p').getContext('2d');
var src = document.getElementById('p2');
setTimeout(function () {
while (true) {
ctx.drawImage(src, 0, 0);
}
}, 1000);
</script>
</body>
</html>

为了获得良好的取暖效果,建议将风扇频率调节至最低

Python 版

转自 http://www.april1985.com/post/2015-02-08-make-mac-hot/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import multiprocessing
import hashlib

def thread_func():
while True:
pass

if __name__ == "__main__":
cpus = 4
t = []
for i in range(0,cpus):
thread = multiprocessing.Process(target = thread_func)
thread.start()
print i
t.append(thread)

for i in range(0,cpus):
t[i].join()

当然有这个玩意儿还不够,虽然把CPU占用率提上去了,但是MAC的风扇会狂转,这样可会觉得比较吵。下载个Macs Fan Control,将风扇的控制策略改为固定最低,这样就好了。
如果嫌火力不够大,将上面的cpus改为更大的值即可,但是这样会让系统反应很慢哟。

扯蛋

  • 新MBP刚发布你们就准备换电脑啦 - ying.zhou
  • 最后面是不是要加上一句爆炸免责声明 - xiao.xu
  • 果断上 Adobe flash 啊,随便开个 flash 视频,分分钟烫手 - hao.li
  • 突然有一种想要把iPhone变成暖手宝的冲动 - lei.huang
  • 既然要发热,setTimeout 换成 setInterval 吧 - yangqijun.feng
  • No ZUO No Die 这是非常 “好” 的利用了笔记本保修期啊 - maoqiang.gong
  • 看完这个邮件,我整个人都兴奋起来了 - xiaochun.zhang
  • 请照做的读者留下自己的 mac id,以便将来在二手市场更好杀价 – zhicheng.wang

高级玩法

贡献自 kaihang.an
不要浪费宝贵的运算资源!既然是要暖手,也要暖的高大上一点嘛!

来来, 向各位隆重推荐
SETI@home, 在家搜索地外文明
Search for ExtraTerrestrial Intelligence at Home

只需要安装加州大学伯利克分校的分布式计算平台(BOINC), 添加 SETI@Home , 然后就可以开心的暖手啦!
BOINC程序会从阿雷西博天文台的观测数据中拉取一小段小段, 分析其中是是否具有地外文明的信号. 200k左右的数据, 需要一台普通笔记本满负荷运转4小时以上. 而阿雷西博每天的观测数据有35G, 完全不担心不够用来暖手呢!
暖着暖着发现外星人了, 还能以自己的名字命名, 想想还真是有点小激动呢!
希望大家在发现外星人以后别抱怨爹妈给起的名字不好听=.=!!!

SETI@homeBOINC 平台上的众多项目之一, 其他 fancy 的项目还有
搜索引力波: Einstein@Home
协助改善 LHC 粒子加速器: LHC@home
预测21世纪气候: Climateprediction.net
我个人最喜欢的除了 SETI@home 以外, 还有 Rosette@home , 计算蛋白质折叠, 还不但能当暖宝宝, 还有点好玩呢!

贡献自 pei.xu

这里有个坑:用过控制风扇转速的软件之后,即使卸载软件,转速也难以恢复正常状态。
需要参照 这个文档 进行重置