Module 3_DMIPS ECEN 5803 Project 1 Submitted by 1. Rahul Yamasani 2. Srivishnuj Alvakonda
Fork of Dhrystone by
main.cpp@0:f96b0b385ec4, 2014-06-13 (annotated)
- Committer:
- jmehring
- Date:
- Fri Jun 13 18:30:37 2014 +0000
- Revision:
- 0:f96b0b385ec4
- Child:
- 1:a4840e30d4a9
Dhrystone Benchmark Program C/1 12/01/84
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jmehring | 0:f96b0b385ec4 | 1 | #include "mbed.h" |
jmehring | 0:f96b0b385ec4 | 2 | #include "dhry.h" |
jmehring | 0:f96b0b385ec4 | 3 | |
jmehring | 0:f96b0b385ec4 | 4 | DigitalOut myled(LED1); |
jmehring | 0:f96b0b385ec4 | 5 | Timer timer; |
jmehring | 0:f96b0b385ec4 | 6 | Serial pc(USBTX, USBRX); //serial channel over HDK USB interface |
jmehring | 0:f96b0b385ec4 | 7 | |
jmehring | 0:f96b0b385ec4 | 8 | int main() { |
jmehring | 0:f96b0b385ec4 | 9 | double benchtime, dps; |
jmehring | 0:f96b0b385ec4 | 10 | unsigned long loops; |
jmehring | 0:f96b0b385ec4 | 11 | |
jmehring | 0:f96b0b385ec4 | 12 | pc.baud(9600); |
jmehring | 0:f96b0b385ec4 | 13 | printf("Dhrystone Benchmark Program C/1 12/01/84\r\n"); |
jmehring | 0:f96b0b385ec4 | 14 | timer.start(); |
jmehring | 0:f96b0b385ec4 | 15 | while(1) { |
jmehring | 0:f96b0b385ec4 | 16 | loops = 0l; |
jmehring | 0:f96b0b385ec4 | 17 | myled = 1; |
jmehring | 0:f96b0b385ec4 | 18 | timer.reset(); |
jmehring | 0:f96b0b385ec4 | 19 | do { |
jmehring | 0:f96b0b385ec4 | 20 | Proc0(); |
jmehring | 0:f96b0b385ec4 | 21 | loops += LOOPS; |
jmehring | 0:f96b0b385ec4 | 22 | benchtime = timer.read(); |
jmehring | 0:f96b0b385ec4 | 23 | } while (benchtime <= 60.000); |
jmehring | 0:f96b0b385ec4 | 24 | myled = 0; |
jmehring | 0:f96b0b385ec4 | 25 | dps = (double)loops / benchtime; |
jmehring | 0:f96b0b385ec4 | 26 | printf("Dhrystone time for %ld passes = %.3f sek\r\n", loops, benchtime); |
jmehring | 0:f96b0b385ec4 | 27 | printf("This machine benchmarks at %.0f dhrystones/second\r\n", dps); |
jmehring | 0:f96b0b385ec4 | 28 | |
jmehring | 0:f96b0b385ec4 | 29 | wait(1.0); |
jmehring | 0:f96b0b385ec4 | 30 | } |
jmehring | 0:f96b0b385ec4 | 31 | } |