Abstract
We can significantly reduce the time required to realize designs if it is possible to find limits to the performance of an embedded system, solely based on high-level system specifications. For that purpose, we present in this paper the cprof profiler, which determines the number of clock cycles needed to execute a C-program in hardware. The cprof tool is based on the Clang compiler front-end to parse C-programs and to produce instrumented source code for the profiling. Using cprof, we determine a lower and upper bound limit for all 29 cases of the PolyBench/C benchmark suite. The lower and upper bound are determined using the absolute performance estimations assuming all statement are mapped onto the same processing resource and unbounded performance estimations assuming unlimited resources. We also compared the clock cycles found by cprof with RTL implementations for all 29 Polybench/C cases and found that cprof determines with 1.2% accuracy the correct number of clock cycles. It does this in a fraction of the time compared to the time needed to do a full RTL simulation.
Original language | English |
---|---|
Title of host publication | SCOPES 2016 |
Subtitle of host publication | Proceedings of the 19th International Workshop on Software and Compilers for Embedded Systems |
Place of Publication | New York, NY |
Publisher | Association for Computing Machinery (ACM) |
Pages | 90-97 |
Number of pages | 8 |
ISBN (Print) | 978-1-4503-4320-6 |
DOIs | |
Publication status | Published - 2016 |
Event | SCOPES 2016: 19th International Workshop on Software and Compilers for Embedded Systems - Sankt Goar, Germany Duration: 23 May 2016 → 25 May 2016 http://www.scopesconf.org/scopes-16/ |
Conference
Conference | SCOPES 2016 |
---|---|
Country/Territory | Germany |
City | Sankt Goar |
Period | 23/05/16 → 25/05/16 |
Internet address |