适用于Linux的Xscale编译器?(也是Xscale编译标志问题)

use*_*293 1 linux gcc arm cross-compiling xscale

我目前正在使用基于GCC 3.3.3的交叉编译器来编译Xscale PXA270开发板.但是,我想知道是否有其他Xscale编译器在Linux(或Windows)上运行?我正在使用的交叉编译器设置在目标设备上具有可怕的性能,某些程序在Xscale处理器上执行相当数量的数学运算比在类似时钟的Pentium 2上执行10到20倍.编译器的任何其他选项我应该使用基于GCC的编译器设置特定的编译器标志,这可能有助于提高性能?

谢谢,本

caf*_*caf 5

与Pentium 2不同,XScale架构没有本机浮点指令.这意味着必须使用整数指令模拟浮点数学 - 关于右侧的10到20倍减速声音.

要提高性能,您可以尝试以下几点:

  • 在可能的情况下,最小化浮点的使用 - 在某些地方,您可以替代普通整数或定点计算;
  • 通过在可能的情况下预先计算值表来获得速度的权衡记忆;
  • 在不需要后者精度的计算中使用floats而不是doubles(包括使用C99 float版本的math.h函数);
  • 最小化整数和浮点类型之间的转换.