Groups | Search | Server Info | Login | Register
Groups > comp.benchmarks > #53
| From | Philipp Klaus Krause <pkk@spth.de> |
|---|---|
| Newsgroups | comp.lang.c, comp.benchmarks |
| Subject | Re: A new benchmark |
| Followup-To | comp.lang.c |
| Date | 2018-02-07 15:02 +0100 |
| Organization | solani.org |
| Message-ID | <p5f0u4$5fi$1@solani.org> (permalink) |
| References | <p4cjpp$g2c$1@solani.org> |
Cross-posted to 2 groups.
Followups directed to: comp.lang.c
stdcbench has improved substantially since my first post to comp.lang.c. The current version consists of 2 modules, which on typical systems should contribute about equally to the score. c90base: It benchmarks a commonly-implemented subset of what the standard requires for freestanding implementations of C90. It consists of three submodules: 1) Huffman/RLE decompression (adapted from real-world code) 2) Integer matrix multiplication (synthetic) 3) Insertion sort (adapted from real-world code) c90lib: Benchmarks the standard library. I consists of two submodules: 1) Computation of lnlc-width (adapted from real-world code) 2) Peephole optimizer (simplified from real-world code) C99 features (e.g. bool, restrict) are used where available, but not necessary. So far, stdcbench seems to achieve the goals: benchmark a wide range of important standard c functionality, without giving too much emphasis to any particular aspect. Scores are reported for each module and as total. Example output from a i7-7500U-based system (benchmark compiled with GCC 7.2.0 using -O2 -march=native): stdcbench 0.2 stdcbench c90base score: 7827 stdcbench c90lib score: 6548 stdcbench final score: 14375 Example output from a STM8AF5288 at 16 Mhz (benchmark compiled with SDCC 3.6.9 using -mstm8 --opt-code-speed --max-allocs-per-node 10000): stdcbench 0.2 stdcbench c90base score: 6 stdcbench c90lib score: 6 stdcbench final score: 12 stdcbench already seems quite reasonable for benchmarking integer performance. However, there is still work to do: 1) Come up with module(s) for floating-point performance. What matters for embedded systems? How should correctness be verified for floating-point? 2) Find out why the c90lib module hangs on C8051F120 (possible compiler bug). 3) State run/reporting rules. 4) Benchmark a few interesting systems 6) Create a website or write a paper about the benchmark and the results. Philipp
Back to comp.benchmarks | Previous | Next | Find similar
Re: A new benchmark Philipp Klaus Krause <pkk@spth.de> - 2018-02-07 15:02 +0100
csiph-web