【问题标题】:The memory footprint of a program for a RISC processorRISC 处理器程序的内存占用
【发布时间】:2019-04-07 23:47:01
【问题描述】:

如何测试为 RISC 和 CISC 处理器编写的内存占用程序?

哪个需要更多内存,为什么?

【问题讨论】:

    标签: memory microprocessors risc


    【解决方案1】:

    所以,我这样做的方式是通过实验。我将为这两种架构编译二进制文件,然后使用 gcc 工具查看内存占用量。对于以下示例,我将比较 x86_64 和 RISCV 架构。我会使用的第一种方法是尺寸工具,它分解精灵的各个部分并报告尺寸。

     # riscv64-unknown-elf-size Test.elf
    

    会输出这样的东西

       text    data     bss     dec     hex filename
     XXXXXX     XXX XXXXXXX XXXXXXX  XXXXXX Test.elf
    

    然后将其与 x86 版本进行比较:

     # size Test.exe
    

    会输出这样的东西

       text    data     bss     dec     hex filename
     XXXXXX     XXX XXXXXXX XXXXXXX  XXXXXX Test.exe
    

    另一种方法是将您的 elf 转换为直接二进制文件,该二进制文件将逐位放入您的内存中(对于更复杂的内存架构,这可能不正确,但我们将假设它是一个简单的情况所有存储和执行从 RAM )。用于此的工具是 objcopy。

     # riscv64-unknown-elf-objcopy -O binary Test.elf Test.elf.bin
     # objcopy -O binary Test.exe Test.exe.bin
    

    然后检查两个生成的 bin 文件的大小。

    【讨论】:

      猜你喜欢
      • 2014-07-19
      • 1970-01-01
      • 1970-01-01
      • 2015-08-26
      • 2020-01-12
      • 2013-05-14
      • 1970-01-01
      • 2020-08-27
      • 2013-01-21
      相关资源
      最近更新 更多