ati*_*kat 12 embedded optimization gcc memory-footprint greenhills
我对GCC和Greenhills C编译器之间在ARM平台上生成的代码的内存占用量方面的任何比较感兴趣.
这些编译器是否有任何基准或比较?有没有人在这里有任何经验,他们想分享?
Cli*_*ord 10
您应该注意到Green Hills EULA明确禁止被许可人发布基准.
您可以做的是从Green Hills获得评估许可并执行您自己的基准测试.在任何情况下,这都会更值得信赖和代表,因为您可以在真实的生产代码上进行测试.并且在任何情况下,例如ARM7的基准测试可能与Cortex-M3的基准测试非常不同,因此任何可用的已发布结果可能都不是类似的比较,并且可能无法代表您的平台.
还要注意我从GCC的不同二进制发行版中经历了各种各样的结果,即使表面上来自相同的代码库版本(特别是软件浮点性能).所以你仍然最好只信任自己的评估结果.
您可能会同时考虑Keil和IAR,它们也有评估版本.你为什么只考虑这两个?人们通常会在拥有大量预算时使用Green Hills,并且可以从单一来源提供的RTOS集成和调试器功能中受益; 单独使用编译器可能获得的任何好处都不太可能证明IMO的许可证成本.
我没有看到任何基准测试,但根据我的经验,这两个编译器的代码大小和生成的代码非常相似。
如果您想减少内存占用,Green Hills 提供了大量文档和支持,而使用 GCC,一旦您远离人迹罕至的地方,它很快就会变得孤独。Green Hills 还支持压缩的可执行映像,如果您的闪存有限但 RAM 充足,这会非常有用。
我还在两个编译器中使用了自定义运行时和 C 库(这可以为您节省更多空间),但是您需要进行一些挖掘才能获取 GCC 的信息,但是 Green hills 您可以通过生成的向导获取一些内容构建文件。
归档时间: |
|
查看次数: |
4712 次 |
最近记录: |