zephyr/samples/nanokernel/benchmark/sys_kernel
Dmitriy Korovkin f51049b81c Reorganization of time calculating macros
Move time calculation macros from application directory to kernel
directory, since it is used by a kernel component.
In order to follow namespace and naming conventions, convert
macros to SYS_CLOCK_HW_CYCLES_TO_NS* form.

Change-Id: I96e9149c399adc363aed5095ae82a1abc78d2977
Signed-off-by: Dmitriy Korovkin <dmitriy.korovkin@windriver.com>
2016-02-05 20:13:40 -05:00
..
src Reorganization of time calculating macros 2016-02-05 20:13:40 -05:00
Makefile
prj_console.conf
README.txt

Title: SysKernel

Description:

The SysKernel test measures the performance of the sema, lifo, fifo and stack
objects provided by the VxMicro nanokernel.

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

Building and Running Project:

This nanokernel project outputs to the console. It can be built and executed
on QEMU as follows:

    make pristine
    make nanokernel.qemu

If executing on Simics, substitute 'simics' for 'qemu' in the command line.

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

Sample Output:

MODULE: Nanokernel API test
KERNEL VERSION: <varies>

Each test below are repeated 5000 times and the average
time for one iteration is displayed.

TEST CASE: Semaphore channel - 'nano_fiber_sem_take_wait'
DESCRIPTION: testing 'nano_sem_init','nano_fiber_sem_take_wait', 'nano_fiber_sem_give' functions;
Starting test 'nano_fiber_sem_take_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: Semaphore channel - 'nano_fiber_sem_take'
DESCRIPTION: testing 'nano_sem_init','nano_fiber_sem_take', 'fiber_yield',
	'nano_fiber_sem_give' functions;
Starting test 'nano_fiber_sem_take'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: Semaphore channel - 'nano_task_sem_take_wait'
DESCRIPTION: testing 'nano_sem_init','nano_fiber_sem_take_wait', 'nano_fiber_sem_give',
	'nano_task_sem_give', 'nano_task_sem_take_wait' functions;
Starting test 'nano_task_sem_take_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: LIFO channel - 'nano_fiber_lifo_get_wait'
DESCRIPTION: testing 'nano_lifo_init','nano_fiber_lifo_get_wait', 'nano_fiber_lifo_put' functions;
Starting test 'nano_fiber_lifo_get_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: LIFO channel - 'nano_fiber_lifo_get'
DESCRIPTION: testing 'nano_lifo_init','nano_fiber_lifo_get_wait', 'nano_fiber_lifo_get',
	'nano_fiber_lifo_put', 'fiber_yield' functions;
Starting test 'nano_fiber_lifo_get'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: LIFO channel - 'nano_task_lifo_get_wait'
DESCRIPTION: testing 'nano_lifo_init','nano_fiber_lifo_get_wait', 'nano_fiber_lifo_put',
	'nano_task_lifo_get_wait', 'nano_task_lifo_put' functions;
Starting test 'nano_task_lifo_get_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: FIFO channel - 'nano_fiber_fifo_get_wait'
DESCRIPTION: testing 'nano_fifo_init','nano_fiber_fifo_get_wait', 'nano_fiber_fifo_put' functions;
Starting test 'nano_fiber_fifo_get_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: FIFO channel - 'nano_fiber_fifo_get'
DESCRIPTION: testing 'nano_fifo_init','nano_fiber_fifo_get_wait', 'nano_fiber_fifo_get',
	'nano_fiber_fifo_put', 'fiber_yield' functions;
Starting test 'nano_fiber_fifo_get'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: FIFO channel - 'nano_task_fifo_get_wait'
DESCRIPTION: testing 'nano_fifo_init','nano_fiber_fifo_get_wait', 'nano_fiber_fifo_put',
	'nano_task_fifo_get_wait', 'nano_task_fifo_put' functions;
Starting test 'nano_task_fifo_get_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: Stack channel - 'nano_fiber_stack_pop_wait'
DESCRIPTION: testing 'nano_stack_init','nano_fiber_stack_pop_wait', 'nano_fiber_stack_push' functions;
Starting test 'nano_fiber_stack_pop_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: Stack channel - 'nano_fiber_stack_pop'
DESCRIPTION: testing 'nano_stack_init','nano_fiber_stack_pop_wait', 'nano_fiber_stack_pop',
	'nano_fiber_stack_push', 'fiber_yield' functions;
Starting test 'nano_fiber_stack_pop'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

TEST CASE: Stack channel - 'nano_task_stack_pop_wait'
DESCRIPTION: testing 'nano_stack_init','nano_fiber_stack_pop_wait', 'nano_fiber_stack_push',
	'nano_task_stack_pop_wait', 'nano_task_stack_push' functions;
Starting test 'nano_task_stack_pop_wait'. Please wait...
TEST RESULT: SUCCESSFUL
DETAILS: Average time for 1 iteration: NNNNN nSec
END TEST CASE

VXMICRO PROJECT EXECUTION SUCCESSFUL