From b8057b191231dea4b973f1d5066f59afa3881dba Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Tue, 3 Jan 2017 18:55:20 -0800 Subject: Add benchmarking README --- README.md | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/README.md b/README.md index 58664b0..d0dfc29 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,53 @@ cd freedom-e-sdk make help ``` +### Benchmarking ### + +#### Dhrystone #### + +After setting up the software and debug toolchains, you can build and +execute everyone's favorite benchmark as follows: + +- Compile the benchmark with the command `make software PROGRAM=dhrystone`. +- Run on the HiFive1 board with the command `make upload PROGRAM=dhrystone`. + This will take a few minutes. Sample output is provided below. +- Compute DMIPS by dividing the Dhrystones per Second result by 1757, which + was the VAX 11/780's performance. In the example below, 729927 / 1757 = + 415 DMIPS. +- Compute DMIPS/MHz by dividing by the clock rate: in the example below, + 415 / 260 = 1.60 DMIPS/MHz. + +``` +core freq at 259830579 Hz + +Dhrystone Benchmark, Version 2.1 (Language: C) + + + +Microseconds for one run through Dhrystone: 1.3 +Dhrystones per Second: 729927.0 +``` + +#### CoreMark #### + +We cannot distribute the CoreMark benchmark, but following are instructions +to download and run the benchmark on the HiFive1 board: + +- Download CoreMark from EEMBC's web site and extract the archive from + http://www.eembc.org/coremark/download.php. +- Copy the following files from the extracted archive into the + `software/coremark` directory in this repository: + - `core_list_join.c` + - `core_main.c` + - `coremark.h` + - `core_matrix.c` + - `core_state.c` + - `core_util.c` +- Compile the benchmark with the command `make software PROGRAM=coremark`. +- Run on the HiFive1 board with the command `make upload PROGRAM=coremark`. +- Divide the reported Iterations/Sec by the reported core frequency in MHz to + obtain a CoreMarks/MHz value. + ### For More Information ### Documentation, Forums, and much more available at -- cgit v1.2.3