MCU 성능 측정을 할수 있는 벤치마크 방법은 여러가지가 있지만 Dhrystone, Whetstone 방식을 많이 사용한다.
각각의 특징은 아래와 같다.
- Dhrystone - 정수(ALU)연산성능 측정, MIPS 수치로 표기
- Whetstone - 부동소수점(FPU)연산성능 측정, MFLOPS 수치로 표기
테스트 코드는 STM32H MCU Dhrystone, Whetstone, IIR Benchmark 성능 테스트 를 이용하였다.
GD32F303 의 Dhrystone, Whetstone, IIR Filter 벤치마크 테스트 결과 정수 연산은 나쁘지 않은데 부동소수점 연산은 좋지 않다. STM32의 Cortex-M4코어와 비교하면 상당한 성능 차이가 있는것 같다.
하지만 가격 대비 성능으로 비교 한다면 STM32F103 벤치마크 결과와 비교 해서는 경쟁력은 있어 보인다.
.mode = Arduino
Dhrystone Benchmark, Version 2.1 (Language: C)
Execution starts, 300000 runs through Dhrystone
Execution ends : 0.803 Seconds
Measured time too small to obtain meaningful results
Please increase number of runs
Microseconds for one run through Dhrystone: 2.68
Dhrystones per Second: 373563.65
VAX MIPS rating = 212.61 DMIPS
---------------------------------------------------
Whetstone Benchmark, Version 1.2 (Language: C)
Loops: 1000, Iterations: 1, Duration: 2531 ms.
C Converted Single Precision Whetstones: 39.51 MIPS
---------------------------------------------------
4th order float IIR speed benchmark
total number of samples: 15000 duration [us]: 90 ==> speed [kiloSamples/second] : 166.67
반응형