我如何确定 raspberry pi 是否足够强大以 运行 我的代码?

How can I determine if a raspberry pi is powerful enough to run my code?

也许我用错误的标签发布了这个,但希望有人能帮助我。我是一名工程师,发现自己在自动化方面越来越深入。最近我在 raspberry pi 上设计了一个自动化系统。我写了一个非常简单的代码,它被复制以同时从不同的串行端口读取传感器值。我这样做是为了在需要时关闭一个脚本而不影响其他脚本。它 运行 现在很好,但是当我第一次开始时我的 cpu 超载时遇到了问题(我相信这是因为我一次打开所有代码而不是一次打开一个代码)。

我的问题是: 如何确定我编写的代码需要多少计算能力?在开始构建机器人之前,我如何指定一台计算机来 运行 我的代码?

您在任何计算机上都可能受限的三种资源是磁盘、RAM 和 CPU(内核)。 MicroSD卡价格便宜,而且容易更换,所以比较关心的是后两者。

根据您编写的语言,您将或多或少地控制内存使用。 Python 特别是 "saves" 开发者由 "handling" 自动记忆。 Python里面有几篇关于内存管理的好文章,比如this one. When running a simple script (e.g. activate these IO pins) on a machine with gigabytes of memory, this is rarely an issue. When running data intensive applications (e.g. do linear algebra on this gigantic array) then you have to worry about how much memory you need to do the computation and whether the interpreter actually frees it when you're done. This is not always easy to calculate but if you profile你的软件在别的机器上估计可以吧

CPU使用比较容易准备。为 OS 和其他功能保留 1 个内核,其余的可供您的软件使用。如果您编写单线程代码,这应该足够了。如果您有并行处理,那么要么坚持使用 N-1 个工作人员,要么您需要在软件设计上发挥创意。

编辑:所有这些都是考虑到 Raspberry Pi。 Pi 是一台完整的计算机,外形很小:OS、BIOS、启动时间等。许多嵌入式问题可以使用 Arduino 或其他一些具有不同考虑因素的控制器来解决.