Hallo Zusammen, unter[http://www.mikrocontroller.net/articles/STM32#Weblinks.2C_Foren.2C_Communities.2C_Tutorials] gibt es einen Link zu einem CoreMark 1.0 Testbericht. Die Tests sind bei verschiedenen MCU- und Compilereinstellungen auf M3/M4-MCUs gelaufen. Obwohl die STM32 meist schon bei der debug-freundlichen -O0 genug Rechenleistung und Speicher haben, ist es doch ganz interessant zu sehen, wie sich Speicherbedarf, Geschwindigkeit und Verlustleistung anpassen lassen. Nun würde mich natürlich interessieren, ob jemand insbesondere mit dem GCC, eine bessere Performance erzielen kann. Im Bericht verwende ich nur die von CooCox 1.7.5 angebotenen -Os,-O0..3. Unter "gcc --help=optimizers" gibt's da sicher noch ein paar weitere Möglichkeiten. Die CoreMark-Lizenz mag nicht, dass ich die kompletten Projekte online stelle. Bei Interesse sende ich die CooCox-Projekte inkl. core_portme.c/h per PM. Die fehlenden CoreMark-Sourcen gibt's dann bei coremark.org kostenlos gegen Registrierung. Grüße, Marcus
Interessant wäre auch der Coremark für -Og (debuggerfreundliche Optimierung), die es seit 4.8 gibt.
Hallo Uwe, da der GCC immer den letzten Switch einer Art verwendet, ergibt sich mit -mcpu=cortex-m4; -mthumb; -Wall; -ffunction-sections; -g; -O3; -Og; -DSTM32F407ZG; -DSTM32F4XX; -DUSE_STDPERIPH_DRIVER; -D__ASSEMBLY__; -I.; folgendes Ergebnis: STM32F407VG GCC4.8.3 -Og text 13892 data 44 bss 8220 168 MHz 5WS-I-D-P 258,397933 CoreMark 1,54 CoreMark/MHz Zum Vergleich: STM32F407VG GCC4.8.3 -O3 17648 44 8220 168 5WS-I-D-P 373,134328 2,22 Danke für den Tipp! Marcus
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.