Logo

Linux benchmark on Xilinx Spartan-6 LX45 (SP605 evk)

Linux Linux Drivers Linux Embedded Microblaze Nbench Petalinux Sp605 Spartan-6 Xilinx

2 minutes

I was asked to give at least a generic insight of “how fast” would Linux run in a Microblaze soft-CPU running on a Spartan-6 LX45 processor (specifically on the SP605 evaluation kit). Of course it has to be clear that the usage of such a processor/environment cannot focus on pure performance reasons, as you usually choose a FPGA for other reasons. For pure performance there are much better solutions (hardware based CPUs indeed) or if you need also the FPGA advantages processors with both a FPGA part and a hardware CPU, such as the Zynq family processors for example.

This being said I first just tried to find this informations with BigG but couldn’t find some concrete numbers on the network, just mostly more or less argumented rants on how slow soft-CPUs run. So with a little bit of troubles (ISE is huge, ISE JTAG driver support for recent kernels is not working much out of the box and the whole FPGA-PetaLinux system is a little different from what I’m used to work with) I managed to make the precompiled PetaLinux 2013.04 final work on the board and here are the results of nbench (compiled with the PetaLinux supplied microblaze crosscompiler) running on the SP605 should somebody have the same question to answer in the future:

`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        :          3.6751  :       0.09  :       0.03
STRING SORT         :         0.60717  :       0.27  :       0.04
BITFIELD            :       3.908e+05  :       0.07  :       0.01
FP EMULATION        :         0.37078  :       0.18  :       0.04
FOURIER             :         0.89255  :       0.00  :       0.00
IDEA                :          9.9641  :       0.15  :       0.05
HUFFMAN             :          4.4452  :       0.12  :       0.04
LU DECOMPOSITION    :        0.033296  :       0.00  :       0.00
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX       : 0.178
FLOATING-POINT INDEX: 0.012
Baseline (MSDOS*)   : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU                 :
L2 Cache            :
OS                  : Linux 3.6.0
C compiler          : microblazeel-xilinx-linux-gnu-gcc
libc                : static
MEMORY INDEX        : 0.084
INTEGER INDEX       : 0.039
FLOATING-POINT INDEX: 0.009
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.
root@Xilinx-SP605-AXI-full-14_5:~#