zephyr/samples/microkernel/benchmark/boot_time
Juan Manuel Cruz 0e1d6a037c Kbuild: Microkernel benchmark test main Makefiles.
The following commits adds the main Makefiles for the microkernel
benchmark test, using parameters to be used by the sanity check.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7601df92006ca81b3680f6c2b4e25de076512e41
2016-02-05 20:14:07 -05:00
..
generic_pc Kbuild: EXPERIMENTAL ksymbol additions for benchmark conf snippets. 2016-02-05 20:14:07 -05:00
quark Kbuild: EXPERIMENTAL ksymbol additions for benchmark conf snippets. 2016-02-05 20:14:07 -05:00
src Kbuild: Makefiles for the benchmark tests. 2016-02-05 20:14:07 -05:00
check_prj_conf.mk First commit 2015-04-10 16:44:37 -07:00
get_prj_conf.mk First commit 2015-04-10 16:44:37 -07:00
Makefile Kbuild: Microkernel benchmark test main Makefiles. 2016-02-05 20:14:07 -05:00
prj.vpf First commit 2015-04-10 16:44:37 -07:00
README.txt Remove references to Simics from README.txt files 2016-02-05 20:13:48 -05:00

Title:  BootTime

Description:

BootTime measures the time:
   a) from system reset to kernel start (crt0.s's __start)
   b) from kernel start to begin of main()
   c) from kernel start to begin of first task
   d) from kernel start to when microkernel's main task goes immediately idle

The project can be built using one of the following three configurations:

best
-------
 - Disables most features
 - Provides best case boot measurement

default
-------
 - Default configuration options
 - Provides typical boot measurement

worst
-------
 - Enables most features.
 - Provides worst case boot measurement

--------------------------------------------------------------------------------

Building and Running Project:

This microkernel project outputs to the console.  It can be built and executed
on QEMU in three possibile configurations as follows:

    make pristine
    make BOOTTIME_QUALIFIER=best microkernel.qemu

    make pristine
    make BOOTTIME_QUALIFIER=default microkernel.qemu

    make pristine
    make BOOTTIME_QUALIFIER=worst microkernel.qemu

--------------------------------------------------------------------------------

Sample Output:

tc_start() - Boot Time Measurement
MicroKernel Boot Result: Clock Frequency: 20 MHz
__start       : 377787 cycles, 18889 us
_start->main(): 3915 cycles, 195 us
_start->task  : 5898 cycles, 294 us
_start->idle  : 6399 cycles, 319 us
Boot Time Measurement finished
===================================================================
PASS - bootTimeTask.
===================================================================
VXMICRO PROJECT EXECUTION SUCCESSFUL