Matlab under Ubuntu

June 27, 2008 10:17 pm | In Tech | 1 Comment | hide

Some tips:

  • Q: Matlab desktop does not show up correctly.
    A: export MATLAB_JAVA=/usr/lib/jvm/java-6-sun/jre/ (requires Sun Java 6 Runtime)
  • Q: Matlab windows disappear in taskbar (Window List applet).
    A: export AWT_TOOLKIT=MToolkit
  • Q: Printing in Matlab throws java exception.
    A: Go set all printers > Job Options > Orientation to something other than “Automatic Rotation”.

Links: 1, 2.

Tags: , ,

网络能有多快?

June 10, 2008 7:22 pm | In Tech | 9 Comments | hide

网络到底能有多快?废话少说,先从一些基本问题说起。

A. 速度单位和测速方法

文件传输速度一般用 MB/s 表示。这个缩写 MB 涉及到 Binary Prefix 的问题,按照最正统的约定,1 MB = 106 = 1 000 000 bytes,而 1 MiB = 220 = 1 048 576 bytes,这两者只相差 5%,很多地方就常常混用。比方 dd 命令汇报的速度是正统的 MB/s,而 wget 和大部分浏览器显示的 MB/s 则实际上是 MiB/s。

网络连接速度则一般用 Mbps 表示,百兆以太网连接速度是 100 Mbps,也即 100 000 000 bits per second。一个 byte 是 8 个 bit,注意一般小写 b 表示 bit,大写 B 表示 byte。比方 USB 2.0 极限速度是 480 Mbps,实际上只不过是 60 MB/s,现代内置硬盘的速度都远高于此。

因此我们可以看到,百兆以太网 100 Mbps 数据传输的极限速度是 100 000 000 / 8 / 220 = 11.9 MiB/s。但是这些数据中大概至少有 2% 是网络包头之类的,其真正的有用数据吞吐率(throughput)极限是 11.6 MiB/s 左右。

有关测速方法,fishy 同学对此似乎研究。现成的可以测试和显示网络传输速度的命令有比如 dd, rsync --progress, wget, scp 等,windows 下面那就用 ftp 软件或者浏览器好了……

B. 影响速度的因素

我们平时架的家用局域网一般都是百兆以太网,通常情况下,传文件至少可以达到 11 MiB/s 的速度,但是也未必,有各种因素会减慢这个速度。

  • 网络传输协议:通常在局域网里面使用的文件传输/共享协议有:afp, ftp, http, sftp, rsync, nfs, smb。大部分协议传大文件都可以不费力气的打满带宽,唯一要提一下的就是这个 smb 协议。smb 也就是平常在 windows 里面共享文件夹用的那个协议,很诡异的一点是这个协议传文件即使是两台 windows 之间也常常打不满带宽,而 Mac 下面性能尤其低,至于为什么会这样,我也不知道(请高人指点)。另外一点是如果传输大量小文件,有很多额外数据要浪费带宽,rsync 协议在这一点上稍强,但是比较通用的提速办法是在源机器把文件打包传输到目标机器再解包。
  • 机器性能:通常来说,主频 500 MHz 以下的机器做路由器,或者主频 1 GHz 以下的机器用有加密/压缩的协议(比如 sftp)传文件,其本身都有可能成为性能瓶颈。即便是 Linksys,早期有些号称百兆以太网的路由器其实根本达不到 100 Mbps 交换数据,被骗的人不在少数。另外硬盘的写入性能如果达不到网络带宽,测试网络性能可以只传文件而不写磁盘,比如 wget 加 -O /dev/null,千兆以太网传文件的速度瓶颈就有可能在硬盘写入速度。
  • 程序设置:通常来说程序的参数设置只要不太离谱都不会影响传文件的速度,但是也有例外。比如,Mac 下面的 dd 命令从 smb mount 的目录拖文件,如果使用默认 bs 大小速度非常之慢。另外,sftp 协议用不同的软件差别很大,但是我忘记我以前的测试结果了,所以等我有空再补上来……
  • 网况:(这个词不知道谁发明的,貌似是从“路况”一次发展出来的)在局域网内一般网络结构比较容易控制,打满带宽并不是难事;但是到了大因特网上网络传输速度基本上就不由你控制了,这个问题就不在这里讨论了。

C. 关于无线网

无线网 Wi-Fi 技术日新月异,以下是三种常见的规格:

  • 802.11b:频段 2.4 GHz,连接速度最高 11 Mbps,吞吐率极限大概在 0.5 MiB/s 左右。
  • 802.11g:频段 2.4 GHz,连接速度最高 54 Mbps,吞吐率能达到 2.4 MiB/s。
  • 802.11n:频段可选 2.4 GHz 或者 5 GHz,连接速度最快似乎可以到 300 Mbps,吞吐率极限据说高于 12 MiB/s。

不要被无线网的连接速度所迷惑,用目前最常见的 802.11g 传文件实际上只能到 2.4 MiB/s 的样子,而且现在市面上的低端 802.11g 无线路由器往往不能稳定保持这个速度。有一种 802.11g+ 技术可以把 802.11g 的性能翻倍,但是通用性不强,所以使用的地方并不多。

事实上,在 802.11b 之前还有过一个 802.11a,频段是 5 GHz,性能和 802.11g 差不多,可是因为频段选的不好,并没有流行起来。

802.11n 是目前最新的 Wi-Fi 技术,协议还没有最终定稿,但是市面上用协议草案制作的 802.11n 路由器已经不少了。也正因为协议没有最终定稿,不同公司生产的无线基站和无线网卡配合工作往往达不到最高性能。从目前的情况看,802.11n 网络连接至少可以到 130 Mbps 的连接速度,传文件可以达到 5 MiB/s 以上,所以即便是最差情况,802.11n 也已经可以超过 802.11g 的性能。(比如,苹果的 Airport Extreme 如果要兼容 802.11g 就必须工作在 2.4 GHz 频段,这样即使和自家苹果电脑的 802.11n 网卡互联,也只能达到 130 Mbps 的速度;而如果换用 5 GHz 频段,连接速度就是 300 Mbps,传文件可以保持 10 MiB/s 以上。)

无线网的性能会受到很多东西的影响,比方,信号穿的墙厚不厚、什么材料的,周围有没有同频率的干扰信号。2.4 GHz 这个频段很热门(主要是因为这个频段在大多数国家不需要许可证就可以发射),无绳电话、卫星信号、蓝牙、甚至微波炉都是这个频段,所以一般的建议是无线基站要尽量远离别的电子设备。

D. 关于 DSL 等

一般家用安装的 DSL 或者什么宽带专线的带宽数字都是虚的,只有问同类用户才能估计实际的性能。米国最近出了一个规定,至少 768 kbps 才能号称 broadband。记得以前一个小旅馆几十间房共用一个 128 kbps 的出口也好意思对外号称他们有 high speed internet access。

E. 结语

我真唐僧。

Tags: , , , , ,

GPS 拜康神

June 4, 2008 12:24 am | In Tech | 18 Comments | hide

kxnorz tracklog最近似乎流行用 GPS 接收器轨迹作画,号称是把地球当画布,GPS 当画笔,气势何等磅礴。不过,行为艺术其本质就是闲得蛋疼,那个号称画了世界上最大的简笔画的家伙最后自曝是假的。另两个相关的站点:The world is my canvas复活节大兔子

这个想法还是蛮有趣的。不过我没有那么吃饱了撑的,我直接爬到实验室楼顶去试画了一张跪拜康神图,耗时不到六分钟,然后把 GPS tracklog 导出即可。下面有绘画过程,GPS tracklog 可下载,童叟无欺,如假包换。

GPS tracklog 每秒一个数据点,下面这张 GIF 我设置的是 25 fps,也就是说比我实际速度快 25 倍,不到 14 秒就应该完成绘画,但是似乎有些弱的浏览器不能这么快的放 GIF……据观察,Firefox 表现良好。

Tags: , ,

国际化?

May 7, 2008 9:02 pm | In Tech | 8 Comments | hide

ciba

非北京时间的话,倒计时就错了。有一个日本 IP 在 11 点多的时候发贴问:“为什么那个距现场发布还剩 xxx 的那个时间越来越长?” LOL。某人评论说:“从这个我们就可以看出这不是一家国际化的软件公司”。

(对事不对人,谷歌金山词霸还是蛮好用的。)

Google Reader 里看新浪博客图片

April 30, 2008 11:14 pm | In Tech | 2 Comments | hide

Google Reader 里面订阅的新浪博客直接看不到图片。如果你用 Firefox,一个简单解决方法是:

  1. 安装 RefControl 扩展
  2. RefControl Options - Add Site:
    • Site: photo.sina.com.cn
    • Action: <Block> (send no referrer)

这个方法同样适合别的在线 RSS 阅读器。更多信息:HTTP Referer二三事修改配置,让Firefox/Opera突破图片/文件下载“盗链保护”等外链限制~。刚才有人跟我抱怨,新浪这么搞真 SB。我想说,我虽然不赞成新浪限制图片显示,但是我对此表示理解,无论是管理还是技术上的原因。恩,不多说了。

对了五月一号是 RSS Awareness Day。有关什么是 RSS,请看 Common Craft 的视频

RSS Awareness Day

(不得不唧歪一句,这个图片做的可真够难看的。)

Forward link: 盗链、反盗链、反反盗链、反反反盗链

Tags: , , ,

Ubuntu: upgrade to 8.04

April 26, 2008 1:00 am | In Tech | No Comments | hide

Simply do: do-release-upgrade. Initially Mr. Ubuntu said “A unresolvable problem occurred while calculating the upgrade”. /var/log/dist-upgrade/main.log complained ubuntu-desktop package was f**ked up. After manually removing this package, everything went smoothly. Took about 6 hours.

Tags: , ,

世界是由少数人推动的

April 20, 2008 1:13 pm | In Life, Tech | 20 Comments | hide

很久很久以前,我有过一台电脑,CPU 是 80486SX 33MHz,这个 486SX 没有数学协处理器(floating-point unit、FPU、浮点运算单元,用硬件实现浮点数的快速运算),对现代电脑来说 FPU 已经是一个不可缺少的部件。我记得当年 486SX 上生成艺术字就特别特别的慢,比同速度但带 FPU 的 486DX 慢十多倍,真是土鳖啊。

当年英特尔设计 486DX 有一个缺陷,于是他们搞出一个销售策略是,如果测试出来某个 486DX 主电路是好的,但是 FPU 是坏的,那么就把 FPU 部分砸掉,然后把这个芯片当作 486SX 低价销售。这种销售方式很常见,比方我们实验室买的一种镜子,反射率越高价格也就越高,但是不同反射率镜子的生产工艺和成本完全相同,只不过由于生产过程中各类不确定因素导致镜子质量有好有坏,质量好的也就卖得贵一些。农民卖苹果也会分等级,大的苹果卖贵一些,虽然种苹果的时候他未必在大苹果上多花了力气;如果你跟他讲,苹果大小是一个正态分布,大于 +2σ 叫特等品,恐怕农民是听不明白的。

有不少人认为,世界是由少数人推动的。Kisstar 同学说,学术界真正有用的结果都是 top 10% 的牛校牛人搞出来的,大多数人都是陪练,跟着灌水而已。从时间纵向来看,确实有一小部分人为人类进步做出了很大的贡献。然而从横向角度来看,人类是作为一个整体在进步,个人贡献呈现一个正态分布,这样的分布下,必然会有一小部分人对人类进步的贡献极多。这是地球上这么多人的统计规律,所谓大样本出奇迹,世界是不是由少数人推动的,这纯粹就是一个统计学的解释问题。

就像前文所述的一种销售策略,我们是在出卖自己的智慧寻求人类进步。如果你潜质很牛,那么就不应该浪费这种能力,而应该积极的开发潜能尽力推动人类的进步。而大多数人往往觉得自己碌碌无为,并没有对人类进步做出直接的贡献,这种情况下也没有什么好气馁的,应该看到,我们为牛人出现的极小概率的分母贡献了一份,没有我们这些巨大的样本,奇迹也是不会出现的。通俗点说,你觉得是 100 个人的小村庄里面容易出一个牛顿,还是几亿个人的地球上容易出一个牛顿?

活着,就是对人类的贡献。

Tags: , ,

CSS 裸奔节

April 8, 2008 11:58 pm | In Tech | No Comments | hide

第三届 CSS 裸奔节来了!CSS Naked Day,皆在推动 Web 标准。一个具有良好 (x)html 结构层次的网页,即使没有加 CSS,也应该具有高度的可读性。不过,为啥要裸奔,难道网页有漂亮的风格不好吗?可以看比方这里

祝大家裸奔快乐。

P.S. Firefox 里可以通过菜单 View -> Page Style -> No Style 关闭 CSS。Opera 也有类似的功能。

Tags: ,

下一页 »

This weblog is licensed under a Creative Commons License.
Powered by WordPress. Theme based on Pool by Borja Fernandez.