Linux kernel 6.3 - with drystone 2.1 benchmark!

The start of the StarFive upstream have begun to arrive in the Kernel:
Pin control
SDIO/EMMC
PMU
TRNG
Device Tree binding for VisionFive 2

But I saw this (which is an optional fun kernel module):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d5528cc16893

lib: add Dhrystone benchmark test
When working on SoC bring-up, (a full) userspace may not be available,
making it hard to benchmark the CPU performance of the system under
development.  Still, one may want to have a rough idea of the (relative)
performance of one or more CPU cores, especially when working on e.g.  the
clock driver that controls the CPU core clock(s).

Hence make the classical Dhrystone 2.1 benchmark available as a Linux
kernel test module, based on[1].

When built-in, this benchmark can be run without any userspace present.

Parallel runs (run on multiple CPU cores) are supported, just kick the
"run" file multiple times.

Note that the actual figures depend on the configuration options that
control compiler optimization (e.g.  CONFIG_CC_OPTIMIZE_FOR_SIZE vs. 
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE), and on the compiler options used when
building the kernel in general.  Hence numbers may differ from those
obtained by running similar benchmarks in userspace.

[1] https://github.com/qris/dhrystone-deb.git

config TEST_DHRY
	tristate "Dhrystone benchmark test"
	help
	  Enable this to include the Dhrystone 2.1 benchmark.  This test
	  calculates the number of Dhrystones per second, and the number of
	  DMIPS (Dhrystone MIPS) obtained when the Dhrystone score is divided
	  by 1757 (the number of Dhrystones per second obtained on the VAX
	  11/780, nominally a 1 MIPS machine).

	  To run the benchmark, it needs to be enabled explicitly, either from
	  the kernel command line (when built-in), or from userspace (when
	  built-in or modular.

	  Run once during kernel boot:

	      test_dhry.run

	  Set number of iterations from kernel command line:

	      test_dhry.iterations=<n>

	  Set number of iterations from userspace:

	      echo <n> > /sys/module/test_dhry/parameters/iterations

	  Trigger manual run from userspace:

	      echo y > /sys/module/test_dhry/parameters/run

	  If the number of iterations is <= 0, the test will devise a suitable
	  number of iterations (test runs for at least 2s) automatically.
	  This process takes ca. 4s.

	  If unsure, say N.
2 Likes