Hello everyone! I’ve been running my own CoreMark tests to verify the 3.0 CoreMarks/MHz results listed in the PolarFire SoC Product Overview document. Unfortunately, I’ve been running into some trouble repeating this score. Originally, I tried running the following according to the CoreMark instructions:
and I obtained a score of 2.2 CoreMarks/MHz. I contacted Microchip via email to get some advice about how the 3.0 score was obtained, and they recommended I use the following to run the benchmark:
make XCFLAGS="-g -O3 -O2 -DPERFORMANCE_RUN=1 -DHAS_STDIO -DHAS_TIME_H -DUSE_CLOCK -fno-common -funroll-loops -finline-functions -falign-functions=16 -falign-jumps=4 -falign-loops=4 -finline-limit=1000 -fno-if-conversion2 -fselective-scheduling -fno-tree-dominator-opts -lpthread -DHAS_FLOAT=0 -mtune=sifive-7-series -lrt"
They also recommended I change the "typedef unsigned int ee_u32;” line in core_portme.h to “typedef signed int ee_u32;”. However, when I ran the benchmark with the changes implemented, I still obtained the same score of 2.2 CoreMarks/MHz. I reached out to Microchip again about this new result but I haven’t heard back in some time, so I figured I should move to the official PolarFire SoC Icicle Kit forum for further help.
Has anyone else tried running CoreMark on their Icicle Kits? Any recommendations for something I can try to obtain the 3.0 CoreMarks/MHz score that is in the documentation? I’m not sure if I’m doing something wrong, or if perhaps something else is going on with my system. Thanks in advance!!