我目前正在对几种单板微控制器进行比较,并尝试从几个方面(CPU、RAM、价格和功能)对它们进行比较。
当谈到 CPU 时,事情会变得更加棘手,因为有些主板有 1 个核心,而有些则是四核。
给定 CPU 频率和核心数,如何比较 CPU?
更准确地说,我如何才能以适当的方式表明 1.7 GHz 单核比 1.4 GHz 四核更好/更差?
答案1
这个问题没有完美的答案,但我可以尝试给你一些如何选择的指导。哪种 CPU 最好实际上取决于你试图在其上运行的软件类型。如果它被编写为完美并行运行,那么四核处理器会更好,因为它可以同时使用所有 4 个内核来运行计算。如果软件不是为并行运行而编写的(你的所有计算都必须一个接一个地运行),那么单核处理器会运行得更好,因为它具有更高的时钟频率。
如果你的软件经过完美优化,可以并行运行,那么你可以计算出你的微控制器每秒可以计算多少条指令
number_of_cores * frequency_of_computations = instructions_per_second
对于上面列出的两个例子,在软件可以完美并行运行的情况下
单核 1.7Ghz
1 core * 1.7 GHz = 1.7 billion instructions per second
四核 1.4 Ghz
4 cores * 1.4 GHz = 5.6 billion instructions per second
但如果软件必须按顺序运行,那么每秒可以运行的指令数就是时钟频率
对于上述两个示例,在必须按顺序运行指令的情况下
单核 1.7GHz
1.7 billion instructions per second
四核 1.4 GHz
1.4 billion instructions per second
如您所见,根据系统上运行的软件,两种微控制器都可能是更好的选择。这就是您作为设计师必须做出决定的地方。您必须问自己:软件将如何与硬件交互?根据您对这个问题的回答,您需要决定要使用哪种类型的硬件。
答案2
你不能。CPU 的效率差异很大。
只有与完全相同架构的其他 CPU 才能进行直接比较。