ODROID-C1 的 Perl 评测

树莓派的成功开辟了整个基于芯片的系统市场,其中单个芯片集成了计算机的大部分基本功能。许多这些系统运行某种 Linux 发行版。自然,Perl 也随之而来。

去年,尽管许多树莓派的竞争对手出现了,但很少有人能击中同样的公式——足够的 RAM,足够的 CPU,以太网,USB 和便宜。有些速度更快或拥有更多的 RAM,但失去了 Model B+ 的 35 美元价格点。其中之一就是 ODROID-C1

它配备 Cortex-A5 处理器,运行速度为 1.5GHz,并配备 1GB RAM,领先于树莓派 1 版本,并且可能仍然领先于最近发布的 Pi 2 版本。除了可以从 MicroSD 卡启动外,它还可以使用 eMMC 模块,这承诺会更快。

即使是购买 Class 6 或 Class 10 卡,SD 卡的质量也可能参差不齐,这可能会影响程序的性能,如果它执行大量 I/O 操作。我从 ODROID 商店购买了一张 8GB SD 卡,预装了 Xubuntu。从主观的角度来看,我发现它与我的树莓派通常使用的随机 SD 卡相比相当快。如果您需要额外的功能,eMMC 的价格大约是相同尺寸的两倍,但可能是一个值得考虑的选项。

由于安装 CPAN 模块(特别是没有官方操作系统包的模块)涉及到大量的下载、解包、读取和复制,这个过程可能会对廉价的 SD 卡造成损害。更糟糕的是(根据我的经验),PCDuino v3 内置的闪存非常慢。真遗憾,因为否则它可能是一个有趣的树莓派的替代品。

我曾经整个晚上都在等待树莓派的 SD 卡上安装 CPAN 依赖关系。使用 Hiveberry 的镜像 可以在这里有所帮助。当然,大多数人将从官方操作系统镜像开始,可能会犹豫使用第三方镜像;这是可以理解的。

以下是从 ODROID 商店购买的 SD 卡上的新部署安装 Device::WebIO 的快速基准测试

$ time sudo cpanm Device::WebIO
...
real    5m0.980s
user    3m46.290s
sys     0m18.780s

然后立即安装 Dancer(它有一个相当长的依赖列表)

$ time sudo cpanm Dancer
...
real    18m40.347s
user    13m53.190s
sys     1m32.360s

与我在随机 SD 卡上看到的情况相比,这既快又好!

电源来自一个 5V/2A 适配器,带有 2.5mm 插头,这与 SoC 设备中常见的微 USB 插头不同。我认为这是一个好事;人们经常使用电流不足且信号中噪声多的旧手机充电器。它可能会顺利启动板,但会有随机的问题,他们会感到沮丧并放弃。回顾起来,这些板上的微 USB 可能是一个糟糕的主意。鼓励使用特定、经过验证的电源和不太通用的插头是一个我希望其他板也会效仿的事情,前提是不导致对专有插头的剥削。

您还需要确保有 HDMI Micro Type-D 端口的适配器。这比一些类似板(如 BeagleBone Black)上的 HDMI Mini 还要小。

启动电路板时,使用黑客空间里随便找到的显示器,屏幕上只显示一片空白,偶尔会出现闪烁的噪点图像。原因是SD卡第一个分区的boot.ini文件对HDMI输出有硬编码的分辨率。这个分区是简单的FAT32格式,因此可以在几乎任何电脑上挂载它,并编辑文件以选择正确的分辨率。

预装的perl是

$ perl -v

This is perl 5, version 18, subversion 2 (v5.18.2) built for arm-linux-gnueabihf-thread-multi-64int
(with 41 registered patches, see perl -V for more detail)
...

这比Raspbian镜像上带的5.14更新。注意这个构建中启用了线程和64位整数,这在Raspbian上也是一样。毫无疑问,这是因为为默认系统安装构建的perl需要与现有的每个Perl脚本兼容(或者尽可能多)。大多数基于Linux的Perl应用程序不使用线程,并且通常可以使用本机32位整数。特别是线程,即使在未使用它们的程序中也会明显降低执行速度。如果您需要从应用程序中获取一点额外的速度,请尝试没有这些功能的自定义Perl编译。

到目前为止,我很喜欢这块小电路板。一旦解决了屏幕分辨率问题,设置就变得轻而易举。它运行速度快,Perl版本也相当新。缺点是社区较小,所以您经常需要自己解决问题。推荐给Perl社区中的拓荒者。


本文最初发表在PerlTricks.com

标签

Timm Murray

Timm Murray是一位Perl程序员和硬件专家。他是UAV::Pilot的创建者,这是事实上的Perl无人机库标准。他经常博客关于Perl和硬件破解。

浏览他们的文章

反馈

这篇文章有什么问题吗?请通过在GitHub上打开问题或拉取请求来帮助我们。