树莓派升级arm64 debian stretch小记

树莓派升级arm64 debian stretch小记_第1张图片
stretch.png

需求

在树莓派上做了爬虫,爬取的内容越来越多,眼看32位mongodb的2G存储限制就要被突破了,于是希望能升级到64位系统。
同时,debian 9 stretch发布,也想试试新系统。

咨询

网上搜集了一下资料,大致有两条道路可选:

  • 从ubantu交叉变异arm64的raspbian,然后再一部分一部分地替换32位程序。耗时最多。
  • 下载现成镜像,比如opensuse,pi64。亲测如下:
    • arm64的opensuse是个坑,各种卡。
    • pi64很顺畅,至少sysbench结果的确比32位快了10倍。但是用默认源安装的软件有些缺失,比如mongodb就木有mongodump和mongorestore……

两种尝试

  • 尝试了将raspbian的源修改成stretch的源,然后用apt-get upgrade升级。寄希望于新版本的各种软件能提高效率。

  • 结果遭遇了wifi驱动丢失的问题。修复办法是从别的地方把brcm80211的驱动和配置下载下来放到/lib/firmware/brcm/下面。地址如下:

    • 驱动的bin文件
    • 配置文件
  • 第二个问题是升级过头了,python升到了unstable版本,导致pip安装不了依赖。这个需要手动降低python版本并锁定之。

  • 最后发现,性能没有任何提升

  • 尝试了直接安装pi64。但是坑爹的是进入LXDE的图形界面后,wifi始终设置不上。可能是因为公司wifi是没有密码的吧。

  • 解决办法是按照官网上的方式,手动修改/etc/network/interfaces和/etc/wpa_supplicant/wpa_supplicant.conf。解决了上网问题,其他问题就好办了。

实际结果

原本以为pi64最终实现了64位和stretch这两个目标,应当皆大欢喜。但是实际使用发现性能有所下降
尽管sysbench跑分的确快了10倍,但是运行python爬虫存入mongodb的性能下降了40%左右。可能是因为64版本没有2G存储限制且暂时不支持随机文件读写这个特性吧。
不过还好,32位mongodb的2G存储限制总算突破了。

后记

之前我一直搞不明白为什么升到了64位系统后,运行python的效率比之前32位版本不升反降。今天偶然收到一封邮件,提及了pi64相对于官方的32位版本,在cpu特性上有明显缺失:

64vs32.png

自己实践了一下,发现的确如题主所说:

树莓派升级arm64 debian stretch小记_第2张图片
64feature.png

也许正是这些特性的缺失,导致一些程序变慢了吧。
以后会继续关注这个问题。

你可能感兴趣的:(树莓派升级arm64 debian stretch小记)