AnsweredAssumed Answered

BF609's performance

Question asked by liyq on Jun 16, 2012
Latest reply on Jun 19, 2012 by sonic

Hi,

 

Recently, i got a BF609-EZKIT board, i installed uboot and uImage with 2012R1-BETA1-BF60X, and made some tests with this board, but i am confused with it's performance, i got the Dhrystones per Second only 384615.4, less than my bf537 stamp board about close to 50% ( bf537 stamp i got 657030.3) , i known 2012R1-BETA1 only used one core of BF609, but it still seems very slow than expected. 

 

My question is, is this true for the bf609 single core performance so slow or i missed something. or, if you have a board and installed buildroot, please test it and post your test result, let us see how going wrong or something need to improve.

 

here is my test results (dhrystone is used 2012R1-BETA1 uImage built-in)

--------------------------

root:/mnt/usr/sbin> uname -a

Linux buildroot 3.3.0-ADI-2012R1-pre-00603-gfb4b3b1-dirty #2 Fri May 4 11:31:33 CST 2012 blackfin GNU/Linux

 

root:/mnt/usr/sbin> cat /proc/cpuinfo

processor       : 0

vendor_id       : unknown

cpu family      : Compiled for:0x27fe, running on:0x0000

model name      : ADSP-BF609 500(MHz CCLK) 100(MHz SCLK) (mpu off)

stepping        : 0

cpu MHz         : 500.000/100.000

bogomips        : 995.32

Calibration     : 497664000 loops

cache size      : 16 KB(L1 icache) 32 KB(L1 dcache) 0 KB(L2 cache)

dbank-A/B       : cache/cache

external memory : cacheable in instruction cache

external memory : cacheable (write-back) in data cache

icache setup    : 4 Sub-banks/4 Ways, 32 Lines/Way

dcache setup    : 2 Super-banks/4 Sub-banks/2 Ways, 64 Lines/Way

 

L2 SRAM         : 256KB

L2 SRAM         : uncacheable in instruction cache

L2 SRAM         : uncacheable in data cache

board name      : ADI BF609-EZKIT

board memory    : 131072 kB (0x00000000 -> 0x08000000)

kernel memory   : 130044 kB (0x00001000 -> 0x07f00000)

 

root:/mnt/usr/sbin> dhrystone 5000000

 

Dhrystone Benchmark, Version 2.1 (Language: C)

 

Program compiled without 'register' attribute

 

Execution starts, 5000000 runs through Dhrystone

Execution ends

 

Final values of the variables used in the benchmark:

 

Int_Glob:            5

        should be:   5

Bool_Glob:           1

        should be:   1

Ch_1_Glob:           A

        should be:   A

Ch_2_Glob:           B

        should be:   B

Arr_1_Glob[8]:       7

        should be:   7

Arr_2_Glob[8][7]:    5000010

        should be:   Number_Of_Runs + 10

Ptr_Glob->

  Ptr_Comp:          94915056

        should be:   (implementation-dependent)

  Discr:             0

        should be:   0

  Enum_Comp:         2

        should be:   2

  Int_Comp:          17

        should be:   17

  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING

        should be:   DHRYSTONE PROGRAM, SOME STRING

Next_Ptr_Glob->

  Ptr_Comp:          94915056

        should be:   (implementation-dependent), same as above

  Discr:             0

        should be:   0

  Enum_Comp:         1

        should be:   1

  Int_Comp:          18

        should be:   18

  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING

        should be:   DHRYSTONE PROGRAM, SOME STRING

Int_1_Loc:           5

        should be:   5

Int_2_Loc:           13

        should be:   13

Int_3_Loc:           7

        should be:   7

Enum_Loc:            1

        should be:   1

Str_1_Loc:           DHRYSTONE PROGRAM, 1'ST STRING

        should be:   DHRYSTONE PROGRAM, 1'ST STRING

Str_2_Loc:           DHRYSTONE PROGRAM, 2'ND STRING

        should be:   DHRYSTONE PROGRAM, 2'ND STRING

 

Microseconds for one run through Dhrystone:    2.6

Dhrystones per Second:                      384615.4

----------------------------

Outcomes