All times are UTC-06:00




Post new topic  Reply to topic  [ 20 posts ] 
Author Message
PostPosted: Fri Jun 03, 2011 8:40 am 
Offline

Joined: Mon Jan 30, 2006 1:30 am
Posts: 43
Hello,
I'm in a need of ARM based system for porting Glasgow Haskell Compiler to ARM. Currently I'm using GCC Compiler Farm's EfikaMXs, but unfortunately those hosts are usually completely overloaded by ongoing GCC tasks so I'm thinking on getting some ARM hardware myself. Price of EfikaMX smarttop looks very nice now and I know it's running quite stable with NFS which is probably not the case of other ARM boards which are using ethernet over usb thanks to linux issue with this:
http://marc.info/?l=linux-netdev&m=130471080108319&w=2

Now it seems, Freescale advertise i.MX53 quick start board which is about 60% more expensive than EfikaMX for me in EU and I guess might be 20% faster, and the question is what's better from the price/performance ratio. Have anybody here used both boards for development? I'm looking forward to see any first hand experience with both solutions. Any recommendation for another ARM board with stand-alone ethernet (not Eth-over-USB) and for the domain of open-source development is also highly appreciated.

Thanks!
Karel


Top
   
 Post subject:
PostPosted: Fri Jun 10, 2011 2:13 pm 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Just for the record, friend working for Freescale lend me i.MX53 Quick Start Board for a month. I'm running recommended freescale ubuntu on it on a slow class 4 microSD. If you do have any question w.r.t. this board just ask.


Top
   
 Post subject:
PostPosted: Thu Jun 16, 2011 4:47 pm 
Offline

Joined: Sat Oct 10, 2009 7:52 am
Posts: 3
Could you please compile and run the following test program on this this board and post the results?
http://lists.freedesktop.org/archives/p ... tachment.c

I wonder if the faster DDR3 memory allows it to show much better memory bandwidth than the other ARM Cortex-A8 based devices.

Also the information from /proc/cpuinfo would be interesting to see (primarily Cortex-A8 revision).


Top
   
 Post subject:
PostPosted: Thu Jun 16, 2011 5:08 pm 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Here we go:
Code:
$ cat /proc/cpuinfo
Processor : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 999.42
Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc08
CPU revision : 5

Hardware : Freescale MX53 LOCO Board
Revision : 53020
Serial : 0000000000000000
lucid@lucid-desktop:/export/home/karel/src$ less attachment.c
lucid@lucid-desktop:/export/home/karel/src$ gcc -O2 -mfpu=neon attachment.c -o membench-O2
lucid@lucid-desktop:/export/home/karel/src$ ./membench-O2
direct copy: 277.800 MB/s
direct copy prefetched: 528.611 MB/s
copy via tmp buffer: 215.671 MB/s
copy via tmp buffer prefetched: 359.519 MB/s
tmp buffer use slowdown ratio: 1.47x
lucid@lucid-desktop:/export/home/karel/src$


Top
   
 Post subject:
PostPosted: Fri Jun 17, 2011 12:37 am 
Offline

Joined: Sat Oct 10, 2009 7:52 am
Posts: 3
Thanks a lot for the data. Can you also check whether L1NEON bit from Auxiliary Control Register is set on your board? More explanations are also available here: http://www.mail-archive.com/pixman@list ... 01104.html

Reading Auxiliary Control Register can be only done in the kernel. And can be achieved via something like this (insert this code chunk somewhere to the board file or any other place in the kernel sources which is executed only once when booting):
Code:
int auxcr;
asm volatile ("MRC p15, 0, %0, c1, c0, 1" : "=r" (auxcr));
printk("Auxiliary Control Register = %08X\n", auxcr);


Top
   
 Post subject:
PostPosted: Fri Jun 17, 2011 1:10 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Oh, I'm sorry, but I'm not going to compile new kernel -- I'm not kernel developer but rather application/compiler developer. If you provide some kernel binary which I shall try here, I'll hopefully give it a try and let you know. Doesn't kernel provide sysctl/proc/dev access to read this reg? That would be way much easier...


Top
   
 Post subject:
PostPosted: Sun Jun 19, 2011 10:35 am 
Offline

Joined: Sun May 01, 2011 6:12 pm
Posts: 42
Location: Denmark
Hi kgardas, thanks for doing these tests!

I'm really curious to see how the i.MX53 QSB does compared to a PandaBoard and an Atom 330-based netbook in these selected benchmarks from here: http://openbenchmarking.org/result/1102 ... 04&compare

Basically, all you need to do to compare with these two systems is to first install Phoronix Test Suite (Ubuntu deb available here), and run the following command:
Code:
phoronix-test-suite benchmark 1102288-IV-PANDASD1182 1012227-IV-ATOMIONNE35
And everything *should* Just Work.


Top
   
 Post subject:
PostPosted: Mon Jun 20, 2011 7:38 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Quote:
[...]
Code:
phoronix-test-suite benchmark 1102288-IV-PANDASD1182 1012227-IV-ATOMIONNE35
And everything *should* Just Work.
I'll hopefully do later this week. Currently board is just 100% busy on GHC/LLVM testing...


Top
   
 Post subject:
PostPosted: Mon Jun 20, 2011 9:49 am 
Offline

Joined: Sun May 01, 2011 6:12 pm
Posts: 42
Location: Denmark
Cool! Thank you. I'm very interested in seeing in the results.


Top
   
 Post subject:
PostPosted: Sun Jun 26, 2011 7:39 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Quote:
[...]
Code:
phoronix-test-suite benchmark 1102288-IV-PANDASD1182 1012227-IV-ATOMIONNE35
And everything *should* Just Work.
Oh, you have just not mentioned that it also needs to download 1GB of tests which will result in 2.7GB space needed! Since my microSD card does not have that much space available, I'm running testsuite from the NFS mounted directory -- hence all the sqlite & other disk based tests will be completely out of range of local disks...
Also it looks like all the tests needs to be compiled locally which means I'll need to wait a week or so for the results to come. I've just started this *beast*.
Karel


Top
   
 Post subject:
PostPosted: Mon Jun 27, 2011 12:11 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Quote:
Hi kgardas, thanks for doing these tests!

I'm really curious to see how the i.MX53 QSB does compared to a PandaBoard and an Atom 330-based netbook in these selected benchmarks from here: http://openbenchmarking.org/result/1102 ... 04&compare

Basically, all you need to do to compare with these two systems is to first install Phoronix Test Suite (Ubuntu deb available here), and run the following command:
Code:
phoronix-test-suite benchmark 1102288-IV-PANDASD1182 1012227-IV-ATOMIONNE35
And everything *should* Just Work.
Some preliminary results:
CacheBench:
Read: 475.67 MB/s
Write: 830.10 MB/s
Read/Modify/Write: 534 MB/s

7-Zip compression: 337 MIPS

LAME MP3 Encoding: 528 seconds

Himeno Benchmark: 18.74 MFLOPS

OpenSSL (RSA 4096-bit Performance): 3.1 signs/second

others still running...

Karel


Top
   
 Post subject:
PostPosted: Mon Jun 27, 2011 4:41 am 
Offline

Joined: Tue Mar 09, 2010 10:41 am
Posts: 19
Quote:
Read: 475.67 MB/s
Write: 830.10 MB/s

What does this cache test actually test? (Blocksize?)

I don't have the numbers at hand right now but I have run a different memory and cache benchmark on MX51 some time ago and it was way higher than that.

Actually I remember that I could achieve something around 400MByte/s for a memcopy (Read+Write) in the external DDR2 memory (not cache).


Top
   
 Post subject:
PostPosted: Mon Jun 27, 2011 7:39 am 
Offline

Joined: Sun May 01, 2011 6:12 pm
Posts: 42
Location: Denmark
Quote:
Oh, you have just not mentioned that it also needs to download 1GB of tests which will result in 2.7GB space needed! Since my microSD card does not have that much space available, I'm running testsuite from the NFS mounted directory -- hence all the sqlite & other disk based tests will be completely out of range of local disks...
Also it looks like all the tests needs to be compiled locally which means I'll need to wait a week or so for the results to come. I've just started this *beast*.
Karel
Thanks for your patience!
Yes it does require to download quite a bit of files. But I'm pretty sure these tests don't include any disk-specific benchmarks, so I don't think it will affect the results if you run them from an NFS share.

Wrt. to what CacheBench actually does, I've found this paper which actually seems to state that it measures compiler performance: http://citeseerx.ist.psu.edu/viewdoc/do ... p1&type=ps. But, of course, any executable will - to some extent - measure compiler performance, assuming it was compiled.

I didn't really pick out any specific tests for comparing these netbook-type devices, I don't know which tests would be most suitable. I just stumbled upon these benchmarks for a Pandaboard and an Atom-based netbook and though they would be good to put the i.MX53 platform up against.

Perhaps we should find some more suitable benchmarks? There are plenty to choose from, but I'm not sure all will run on ARM.

When I get the new Smartbook, I'm considering running all the test suites that seem relevant. Like CPU-, memory- and "Linux System"-tests. Some will fail, but the ones that do complete will create a page on OpenBenchmarking.org that contains only ARM-compatible benchmarks, that can be used to compare to other systems. It would be good to find some tests that are as relevant as possible though, if that can be done. Some that reflect the overall speed that we experience a system to have.

This Java script test seems useful as well: http://www.webkit.org/perf/sunspider/sunspider.html


Top
   
 Post subject:
PostPosted: Mon Jun 27, 2011 8:17 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Quote:
Quote:
Oh, you have just not mentioned that it also needs to download 1GB of tests which will result in 2.7GB space needed! Since my microSD card does not have that much space available, I'm running testsuite from the NFS mounted directory -- hence all the sqlite & other disk based tests will be completely out of range of local disks...
Also it looks like all the tests needs to be compiled locally which means I'll need to wait a week or so for the results to come. I've just started this *beast*.
Karel
Thanks for your patience!
Yes it does require to download quite a bit of files. But I'm pretty sure these tests don't include any disk-specific benchmarks, so I don't think it will affect the results if you run them from an NFS share.

Wrt. to what CacheBench actually does, I've found this paper which actually seems to state that it measures compiler performance: http://citeseerx.ist.psu.edu/viewdoc/do ... p1&type=ps. But, of course, any executable will - to some extent - measure compiler performance, assuming it was compiled.

I didn't really pick out any specific tests for comparing these netbook-type devices, I don't know which tests would be most suitable. I just stumbled upon these benchmarks for a Pandaboard and an Atom-based netbook and though they would be good to put the i.MX53 platform up against.

Perhaps we should find some more suitable benchmarks? There are plenty to choose from, but I'm not sure all will run on ARM.

When I get the new Smartbook, I'm considering running all the test suites that seem relevant. Like CPU-, memory- and "Linux System"-tests. Some will fail, but the ones that do complete will create a page on OpenBenchmarking.org that contains only ARM-compatible benchmarks, that can be used to compare to other systems. It would be good to find some tests that are as relevant as possible though, if that can be done. Some that reflect the overall speed that we experience a system to have.

This Java script test seems useful as well: http://www.webkit.org/perf/sunspider/sunspider.html
Hi,

I quite hate openbenchmarking.org since their search is completely broken (try to find pandaboard benchmark results there). Anyway, if I start benchmark like you have advices me to do, then it attempts to run *all* the possible benchmarks. In fact, 121. So far just 14 run, 15th is running now...
Also a lot of benchmarks are disk i/o related so it really matters if you run them on locally attached SATA drive (i.MX53 QSB provides one SATA II port!) or on shared NFS mount.

Karel


Top
   
 Post subject:
PostPosted: Mon Jun 27, 2011 8:20 am 
Offline

Joined: Fri Jun 03, 2011 9:14 am
Posts: 22
Quote:
[...]
I didn't really pick out any specific tests for comparing these netbook-type devices, I don't know which tests would be most suitable.
[...]
I think the most easy is good old nbench2. If you are curious, here you do have results for i.MX53 and also for PandaBoard and of course EfikaMX!:
Code:
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 499.08 : 12.80 : 4.20
STRING SORT : 58.011 : 25.92 : 4.01
BITFIELD : 2.2245e+08 : 38.16 : 7.97
FP EMULATION : 94.48 : 45.34 : 10.46
FOURIER : 1699 : 1.93 : 1.09
ASSIGNMENT : 8.4451 : 32.14 : 8.34
IDEA : 1453 : 22.22 : 6.60
HUFFMAN : 656.85 : 18.21 : 5.82
NEURAL NET : 2.0348 : 3.27 : 1.37
LU DECOMPOSITION : 82.08 : 4.25 : 3.07
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 25.730
FLOATING-POINT INDEX: 2.995
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : i.MX53 1GHz + 1GB DDR3 800MHz
L2 Cache :
OS : Linux 2.6.35.3-744-g27fdf7b
C compiler : gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
libc : libc-2.11.1.so
MEMORY INDEX : 6.436
INTEGER INDEX : 6.409
FLOATING-POINT INDEX: 1.661
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.
Code:
PandaBoard rev A2
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 488.16 : 12.52 : 4.11
STRING SORT : 62.415 : 27.89 : 4.32
BITFIELD : 1.819e+08 : 31.20 : 6.52
FP EMULATION : 70.372 : 33.77 : 7.79
FOURIER : 6797.6 : 7.73 : 4.34
ASSIGNMENT : 9.996 : 38.04 : 9.87
IDEA : 1457.1 : 22.29 : 6.62
HUFFMAN : 781.06 : 21.66 : 6.92
NEURAL NET : 9.9285 : 15.95 : 6.71
LU DECOMPOSITION : 290.4 : 15.04 : 10.86
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 25.364
FLOATING-POINT INDEX: 12.287
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : Dual
L2 Cache :
OS : Linux 2.6.38-1208-omap4
C compiler : gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)
libc : libc-2.13.so
MEMORY INDEX : 6.523
INTEGER INDEX : 6.188
FLOATING-POINT INDEX: 6.815
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.
Code:
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 422.96 : 10.85 : 3.56
STRING SORT : 37.43 : 16.72 : 2.59
BITFIELD : 2.0123e+08 : 34.52 : 7.21
FP EMULATION : 97.04 : 46.56 : 10.74
FOURIER : 1291.7 : 1.47 : 0.83
ASSIGNMENT : 6.2773 : 23.89 : 6.20
IDEA : 902.93 : 13.81 : 4.10
HUFFMAN : 505.64 : 14.02 : 4.48
NEURAL NET : 1.3856 : 2.23 : 0.94
LU DECOMPOSITION : 62.725 : 3.25 : 2.35
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 20.150
FLOATING-POINT INDEX: 2.198
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : ARMv7 (800 MHz)
L2 Cache :
OS : Linux 2.6.31.12-ER1-efikamx
C compiler : gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu9)
libc : libc-2.10.1.so
MEMORY INDEX : 4.872 (1GHz == 6.09)
INTEGER INDEX : 5.149 (1GHz == 6.44)
FLOATING-POINT INDEX: 1.219 (1GHz == 1.52)
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.
and you don't need to tinker with benchmarks which runs for weeks on these low-power/perf systems...

Karel


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 20 posts ] 

All times are UTC-06:00


Who is online

Users browsing this forum: No registered users and 19 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
PowerDeveloper.org: Copyright © 2004-2012, Genesi USA, Inc. The Power Architecture and Power.org wordmarks and the Power and Power.org logos and related marks are trademarks and service marks licensed by Power.org.
All other names and trademarks used are property of their respective owners. Privacy Policy
Powered by phpBB® Forum Software © phpBB Group