test_bench.c 831 B

1234567891011121314151617181920212223242526272829303132333435
  1. #include <stdlib.h>
  2. #include <string.h>
  3. #include "ctest.h"
  4. #include "nuclei_sdk_soc.h"
  5. // uncomment below to disable nmsis bench api
  6. //#define DISABLE_NMSIS_BENCH
  7. #include "nmsis_bench.h"
  8. BENCH_DECLARE_VAR();
  9. unsigned long test_mem[32];
  10. CTEST(bench, bench)
  11. {
  12. BENCH_INIT();
  13. BENCH_START(memset);
  14. memset(test_mem, 0xa5, sizeof(test_mem));
  15. BENCH_END(memset);
  16. BENCH_ERROR(memset);
  17. BENCH_STATUS(memset);
  18. BENCH_RESET(memsetloop);
  19. for (int i = 0; i < 10; i ++) {
  20. BENCH_START(memsetloop);
  21. memset(test_mem, 0xa5, sizeof(test_mem));
  22. BENCH_SAMPLE(memsetloop);
  23. }
  24. BENCH_STOP(memsetloop);
  25. BENCH_STAT(memsetloop);
  26. printf("usecyc:%lu, lpcnt:%lu, sumcyc:%lu\n", (unsigned long)BENCH_GET_USECYC(), (unsigned long)BENCH_GET_LPCNT(), (unsigned long)BENCH_GET_SUMCYC());
  27. }