Benchmark | Description | lines of code | # of constructs in the program | Number of filters in the expanded graph | |||
---|---|---|---|---|---|---|---|
filters | pipelines | splitjoins | feedbackloops | ||||
Vocoder | 28 channel Vocoder | 1964 | 55 | 8 | 12 | 1 | 101 |
Benchmark | 250 MHz RAW processor | C on a 2.2 GHz Intel Pentium IV | ||||
---|---|---|---|---|---|---|
StreamIt on 16 tiles | C on a single tile | |||||
Utilization | # of tiles used | MFLOPS | Throughput (per 105 cycles) | Throughput (per 105 cycles) | Throughput (per 105 cycles) | |
Vocoder | 23% | 15 | 118 | 8.74 | app. too large | 3.35 |
Utilization numbers reported were 41596 useful cycles/ 183488 total cycles = 0.22669602.
flops reported by RAW's cycle-accurate simulator are 4867 first/4846 second (avg = 4856.5), which is (4856.5 flops/11441 cycles) * 250 million cycles/second = 106.12 MFLOPS.
The first iteration done at 0x34de8 (216552 cycles).
The second iteration done at 0x37ab4 (228020 cycles) (delta=11468)
The third iteration done at 0x3a74a (239434 cycles) (delta=11414)
Based on these cycle counts, each iteration takes 11468/11414 cycles
(average = 11441).
1 output every 11441 cycles, normalized to 10^5 cycles results in a throughput of 1*(100000/11441) = 8.7405 outputs every 10^5 cycles.
Number of cycles per iteration: 10^4 iterations/ 163.010 second * 1200 outputs / 1 iteration * 1 second / 2.2*10^9 cycles * 10^5 cycles = 3.34614 outputs / 10^5 cycles.