[arm-gnu] benchmark: arm-none-linux-gnueabi-2009q3_67 much slower in floating point operation than arm-none-linux-gnueabi-gcc 2009q1_203?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[arm-gnu] benchmark: arm-none-linux-gnueabi-2009q3_67 much slower in floating point operation than arm-none-linux-gnueabi-gcc 2009q1_203?
- To: arm-gnu@xxxxxxxxxxxxxxxx
- Subject: [arm-gnu] benchmark: arm-none-linux-gnueabi-2009q3_67 much slower in floating point operation than arm-none-linux-gnueabi-gcc 2009q1_203?
- From: Hui Chen <usa.chen@xxxxxxxxx>
- Date: Thu, 22 Oct 2009 02:44:53 -0500
Hi,
I was trying to benchmark my beagleboard (revC) with emqbit's fft benchmark
tools:
article:
http://www.linuxfordevices.com/c/a/Linux-For-Devices-Articles/Why-ARMs-EABI-matters/
source code here:
http://svn.arhuaco.org/svn/src/emqbit/tools/emqbit-bench/
I modified the Makefile in order to use arm-none-linux-gnueabi-gcc:
=== Makefile ===
CC=arm-none-linux-gnueabi-gcc
CFLAGS:=-std=gnu99 -O3 -mfpu=neon -mfloat-abi=softfp -ffast-math
-mtune=cortex-a8 -mcpu=cortex-a8
LDFLAGS:=-lm
all: bench cfft
bench: distance.o
clean:
rm -f bench cfft *.o
=============
Then I compiled the code under both version 2009q3_67 and 2009q1_203. The q3
is much more slower than q1 in "Distance with C code" case:
==== q3's output ====
16, 67.890198, 50.516529,
32, 71.079941, 53.051617,
64, 72.442558, 54.495312,
128, 75.101112, 55.325558,
256, 75.859520, 55.550907,
512, 76.034462, 55.922165,
1024, 76.154121, 56.025997,
2048, 76.561729, 55.945801,
4096, 76.310066, 55.834229,
8192, 72.476402, 54.069489,
16384, 71.376457, 53.746601,
32768, 68.838760, 52.336586,
65536, 62.960110, 49.533817,
==== q1's output ====
16, 150.082550, 50.052971,
32, 170.367416, 53.051617,
64, 186.896576, 54.798901,
128, 194.670303, 55.733562,
256, 199.026215, 56.216988,
512, 202.300598, 56.500332,
1024, 203.549530, 56.507896,
2048, 203.688477, 56.621536,
4096, 201.465118, 56.024357,
8192, 173.915771, 54.397377,
16384, 166.298325, 54.183308,
32768, 160.627457, 53.372360,
65536, 126.810081, 50.479710,
Any idea? I think I used wrong compile flags but I'm not sure about it.
Thanks,
Hui