Op 21 apr 2008, om 02:00 heeft Siarhei Siamashka het volgende
geschreven:
I'm trying to do some tests to see how the cortex-a8 performs with
video and I'm getting very strange results with mplayer:
The test:
# wget
http://samples.mplayerhq.hu/benchmark/testsuite1/matrixbench_normdivx_vbrmp
3.avi # mplayer -nosound -vo null -quiet -benchmark -loop 12 -
lavdopts
idct=16 matrixbench_normdivx_vbrmp3.avi | grep BENCHMARK
This command line option forces ARMv5TE IDCT (useful for ARM9E and
old XScale
cores without IWMMXT support). ARMv6 IDCT can be enabled using
'-lavdopts idct=17', it may work better.
with idct=17:
BENCHMARKs: VC: 186.421s VO: 0.143s A: 0.000s Sys: 2.025s =
188.588s
BENCHMARK%: VC: 98.8504% VO: 0.0760% A: 0.0000% Sys: 1.0736% =
100.0000%
That would be also interesting. I'm especially interested in 'test-
vfp',
because looking at TRM, seems like VFP also got a major slowdown on
Cortex-A8.
root@beagleboard:~/test# ./test-vfp --freq=$(dmesg | grep MHz | grep
ARM |awk -F/ '{print $5}' | awk '{print $1}')
Function: 'vector_fmul_vfp', time=123.040
Function: 'vector_fmul_reverse_vfp', time=116.570
Function: 'float_to_int16_vfp', time=143.864
Function: 'ff_float_to_int16_c', time=38.269
root@beagleboard:~/test# ./test-unquantize --freq=$(dmesg | grep MHz |
grep ARM |awk -F/ '{print $5}' | awk '{print $1}')
no cpu clock frequency specified, trying to autodetect it...
... detected as 469.6MHz
running correctness tests...
running performance tests...
dct_unquantize_h263_helper_c time=0.05625 usec per element, or 26.4
cycles (469.6MHz)
dct_unquantize_h263_special_helper_armv5te time=0.01772 usec per
element, or 8.3 cycles (469.6MHz)
root@beagleboard:~/test# ./test-idct --freq=$(dmesg | grep MHz | grep
ARM |awk -F/ '{print $5}' | awk '{print $1}') --enable-armv6
avg=-0.08, stddev=36.96, min=-168.00, max=149.00
Assuming cpu clock frequency 381MHz (ARMv6 enabled)
Please be patient and wait for the results, test requires quite a lot
of time to run...
correctness tests passed
- --- benchmarking with zero idct coefficients ---
simple_idct_armv5te time=535.2
simple_idct_put_armv5te cache=no, time=668.3
simple_idct_put_armv5te cache=yes, time=662.9
simple_idct_add_armv5te cache=no, time=890.5
simple_idct_add_armv5te cache=yes, time=744.9
simple_idct_armv5te_ref time=935.8
simple_idct_put_armv5te_ref cache=no, time=1190.6
simple_idct_put_armv5te_ref cache=yes, time=1171.2
simple_idct_add_armv5te_ref cache=no, time=1372.2
simple_idct_add_armv5te_ref cache=yes, time=1229.4
simple_idct_armv6 time=665.1
simple_idct_put_armv6 cache=no, time=934.0
simple_idct_put_armv6 cache=yes, time=754.6
simple_idct_add_armv6 cache=no, time=999.4
simple_idct_add_armv6 cache=yes, time=854.8
- --- benchmarking with random idct coefficients ---
simple_idct_armv5te time=1235.1
simple_idct_put_armv5te cache=no, time=1375.2
simple_idct_put_armv5te cache=yes, time=1367.0
simple_idct_add_armv5te cache=no, time=1617.9
simple_idct_add_armv5te cache=yes, time=1472.9
simple_idct_armv5te_ref time=1616.1
simple_idct_put_armv5te_ref cache=no, time=1863.3
simple_idct_put_armv5te_ref cache=yes, time=1843.0
simple_idct_add_armv5te_ref cache=no, time=2041.1
simple_idct_add_armv5te_ref cache=yes, time=1899.8
simple_idct_armv6 time=1038.1
simple_idct_put_armv6 cache=no, time=1299.8
simple_idct_put_armv6 cache=yes, time=1119.5
simple_idct_add_armv6 cache=no, time=1383.3
simple_idct_add_armv6 cache=yes, time=1234.1
regards,
Koen