解读STL里的std::sort函数

本文是个人对 C++ 标准库里的 std::sort 函数的分析、解读。鉴于个人能力有限,文中若有错误、疏漏还请各位来打我啊多多指教QAQ

当然,各家编译器的实现可能不同,这里我是用的是 LLVM 的实现。

LLVM > libcxx release 37 > algorithm

即 Xcode 8.2.1 中所使用的版本。其实在某一行上的实现方式有微小的不同,但是实际上是等价的。而且那一行也不涉及到这里讨论的 std::sort 函数。

trivial difference
trivial difference

这篇 post 由以下几个部分构成

Continue reading 解读STL里的std::sort函数

Jetson TX1的散热风扇问题

于是之前在Jetson TX1上玩耍的时候,发现貌似不论温度有多高,散热风扇都不会启动,也许是Nvidia对自己的微型核弹能承受的温度上限很有信心吧,不过为了能让这个微型核弹晚几年再炸,就搞了个监控CPU温度然后自动控制风扇的daemon。

整体思路就是通过读取 /sys/class/thermal/thermal_zone0/temp 判断温度,然后在 /sys/kernel/debug/tegra_fan/target_pwm 写入散热风扇的pwm值。然后本着一切从简的原则,直接用perl写了。

Continue reading Jetson TX1的散热风扇问题

Jetson TX1入手(/ω\)

其实在去年12月10来号的时候,就已经决定要入手一个Jetson TX1做开发了,一方面是因为现在使用的MacBook自带的Intel(R) HD Graphics 515性能比较低,当时用waifu2x把一个720P的视频拉到了2560x1440,跑了两周多吧……另一方面是想学习一些并行计算和机器学习的技术。于是就让梅子帮我拿到了一个教育版的Jetson TX1~(我们学校那时还没有教育邮箱,不过现在可以申请啦)

实际拿到Jetson TX1是在12月30号,不过当时刷完系统,装了torch 7之后发现居然就没剩多少了

df -h
df -h

于是剁了一块SSD(下个月吃土吧_(:_」∠)_)

Continue reading Jetson TX1入手(/ω\)

What's behind and beyond the congested network

不知不觉,这次的「Congested Network, Equilibrium Flow, and System Optimal Flow」课程就结束了,这里面的数学上的细节就都在前几篇笔记中(估计还会有两三篇笔记,近期会整理出来),这一篇post大概是在上完这个课程之后的一些想法吧。

Continue reading What's behind and beyond the congested network

Congested network笔记(4)

第二个谬误的思考方式是在估计和进度安排中使用的工作量单位: 人月。成本的确随开发产品的人数和时间的不同有着很大的变化, 进度却不是如此。因此我认为用人月作为衡量一项工作的规模是一个危险和带有欺骗性的神话。 它暗示着人员数量和时间是可以相互替换的。……从而,添加更多的人手,实际上是延长了而不是缩短了时间。

——人月神话

Continue reading Congested network笔记(4)

Congested network笔记(3)

上一篇 Congested network笔记(2) 的最后,我们把问题变成了变分不等式的求解,那么这两个变分不等式在什么情况下存在解,且解唯一呢?

$$\left\{\begin{align}\frac{\partial\mathcal{Z(F)}}{\partial\underline{\mathcal{F}}}\cdot(\mathcal{F}-\underline{\mathcal{F}})&\ge 0&\forall \mathcal{F}\in S&\text{  最优解}\\
\mathcal{C}(\mathcal{F}^*)\cdot(\mathcal{F}-\mathcal{F}^*)&\ge 0&\forall \mathcal{F}\in S&\text{ 均衡解}\end{align}\right.$$

Continue reading Congested network笔记(3)