URL
https://opencores.org/ocsvn/neorv32/neorv32/trunk
Subversion Repositories neorv32
[/] [neorv32/] [trunk/] [sw/] [example/] [dhrystone/] [README.md] - Rev 71
Go to most recent revision | Compare with Previous | Blame | View Log
# Dhrystone Benchmark:copyright: Original sources from [https://github.com/sifive/benchmark-dhrystone](https://github.com/sifive/benchmark-dhrystone) (also, see `LICENSE`).The source code has been modified for the NEORV32 processor.To compile the NEORV32 executable:```neorv32/sw/example/dhrystone$ sh dhrystone.sh```The default number of iterations is 2000000. You can modify this by changing `USER_FLAGS+=-DDHRY_ITERS=2000000` in `dhrystone.sh`.The default optimization level (EFFORT) is `O3`.:warning: Dhrystone will require an IMEM size of 16kB and a DMEM size of 16kB. The MTIME machine timer is used for timing evaluation.:construction: Porting Dhrystone is still work-in-progress. Performance results might be incorrect and not optimized.All results only show the integer parts.### Exemplary OutputOutput generated for processor HW version [v1.5.9.1](https://github.com/stnolting/neorv32/blob/master/CHANGELOG.md)using performance-optimized configuration options.```NEORV32: Processor running at 100000000 HzNEORV32: Executing Dhrystone (2000000 iterations). This may take some time...Dhrystone Benchmark, Version 2.1 (Language: C)Program compiled without 'register' attributeExecution starts, 2000000 runs through DhrystoneExecution endsFinal values of the variables used in the benchmark:Int_Glob: 5should be: 5Bool_Glob: 1should be: 1Ch_1_Glob: Ashould be: ACh_2_Glob: Bshould be: BArr_1_Glob[8]: 7should be: 7Arr_2_Glob[8][7]: 2000010should be: Number_Of_Runs + 10Ptr_Glob->Ptr_Comp: -2147467428should be: (implementation-dependent)Discr: 0should be: 0Enum_Comp: 2should be: 2Int_Comp: 17should be: 17Str_Comp: DHRYSTONE PROGRAM, SOME STRINGshould be: DHRYSTONE PROGRAM, SOME STRINGNext_Ptr_Glob->Ptr_Comp: -2147467428should be: (implementation-dependent), same as aboveDiscr: 0should be: 0Enum_Comp: 1should be: 1Int_Comp: 18should be: 18Str_Comp: DHRYSTONE PROGRAM, SOME STRINGshould be: DHRYSTONE PROGRAM, SOME STRINGInt_1_Loc: 5should be: 5Int_2_Loc: 13should be: 13Int_3_Loc: 7should be: 7Enum_Loc: 1should be: 1Str_1_Loc: DHRYSTONE PROGRAM, 1'ST STRINGshould be: DHRYSTONE PROGRAM, 1'ST STRINGStr_2_Loc: DHRYSTONE PROGRAM, 2'ND STRINGshould be: DHRYSTONE PROGRAM, 2'ND STRINGMicroseconds for one run through Dhrystone: 13Dhrystones per Second: 76923NEORV32: << DETAILED RESULTS (integer parts only) >>NEORV32: Total cycles: 2662000187NEORV32: Cycles per second: 100000000NEORV32: Total runs: 2000000NEORV32: DMIPS/s: 76923NEORV32: DMIPS/MHz: 769NEORV32: VAX DMIPS/s: 43NEORV32: VAX DMIPS/MHz: 43/100```
Go to most recent revision | Compare with Previous | Blame | View Log
