Skip to content

Benchmarks and self-tests refactored as modules

Alex requested to merge branch/bench-and-tests-as-modules into branch/unified

Two new modules:

bench.mo: contains benchmarks:

  • the old ones: for card, memory, peaking, menu backend
  • a new one, which reveals cache size (thanks g3gg0)

selftest.mo: contains the old burn-in tests

  • stubs API test (important for new ports)
  • stability tests (which try a bunch of predefined scenarios)
  • some infinite backend tests, e.g. redraw tests

Moving this stuff to modules reduced core binary size by around 40K (600D). With lua_fix, MemSiz on 600D is 0x7802c. With patchmgr on top of that, 0x7b82c.

So, this patch is all that's needed to re-enable the 600D builds.

TODO:

  • RPC tests should appear in the menu on 7D (done, but not tested)
  • Long benchmarks should disable powersaving (idea from nikfreak)
  • cleanup APIs (calling low-level core stuff is still messy)

Merge request reports