mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-06 10:41:55 +00:00
Some ARM platforms, now, enable HW Stack Protection by default in the Board definition. So if some tests need to run without stack protection, it is not sufficient to disable TEST_HW_STACK_PROTECTION; we need to explicitly disable HW_STACK_PROTECTION. Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no> |
||
---|---|---|
.. | ||
boards | ||
src | ||
CMakeLists.txt | ||
prj_fp.conf | ||
prj.conf | ||
README.txt | ||
testcase.yaml |
Title: Microkernel Object Performance Description: AppKernel is used to measure the performance of microkernel events, mutexes, semaphores, FIFOs, mailboxes, pipes, memory maps, and memory pools. -------------------------------------------------------------------------------- Building and Running Project: This project outputs to the console. It can be built and executed on QEMU as follows: make run -------------------------------------------------------------------------------- Troubleshooting: Problems caused by out-dated project information can be addressed by issuing one of the following commands then rebuilding the project: make clean # discard results of previous builds # but keep existing configuration info or make pristine # discard results of previous builds # and restore pre-defined configuration info -------------------------------------------------------------------------------- Sample Output: |-----------------------------------------------------------------------------| | S I M P L E S E R V I C E M E A S U R E M E N T S | nsec | |-----------------------------------------------------------------------------| |-----------------------------------------------------------------------------| | enqueue 1 byte msg in FIFO | NNNNNN| | dequeue 1 byte msg in FIFO | NNNNNN| | enqueue 4 bytes msg in FIFO | NNNNNN| | dequeue 4 bytes msg in FIFO | NNNNNN| | enqueue 1 byte msg in FIFO to a waiting higher priority task | NNNNNN| | enqueue 4 bytes in FIFO to a waiting higher priority task | NNNNNN| |-----------------------------------------------------------------------------| | signal semaphore | NNNNNN| | signal to waiting high pri task | NNNNNN| | signal to waiting high pri task, with timeout | NNNNNN| | signal to waitm (2) | NNNNNN| | signal to waitm (2), with timeout | NNNNNN| | signal to waitm (3) | NNNNNN| | signal to waitm (3), with timeout | NNNNNNN| | signal to waitm (4) | NNNNNNN| | signal to waitm (4), with timeout | NNNNNNN| |-----------------------------------------------------------------------------| | average lock and unlock mutex | NNNNNN| |-----------------------------------------------------------------------------| | average alloc and dealloc memory page | NNNNNN| |-----------------------------------------------------------------------------| | average alloc and dealloc memory pool block | NNNNNN| |-----------------------------------------------------------------------------| | Signal enabled event | NNNNNN| | Signal event & Test event | NNNNNN| | Signal event & TestW event | NNNNNN| | Signal event with installed handler | | Handler responds OK | |-----------------------------------------------------------------------------| | M A I L B O X M E A S U R E M E N T S | |-----------------------------------------------------------------------------| | Send mailbox message to waiting high priority task and wait | | repeat for 128 times and take the average | |-----------------------------------------------------------------------------| | size(B) | time/packet (nsec) | KB/sec | |-----------------------------------------------------------------------------| | N| NNNNNN| N| | N| NNNNNN| NN| | NN| NNNNNN| NN| | NN| NNNNNN| NN| | NN| NNNNNN| NN| | NNN| NNNNNN| NNN| | NNN| NNNNNN| NNN| | NNN| NNNNNN| NNN| | NNNN| NNNNNNN| NNN| | NNNN| NNNNNNN| NNNN| | NNNN| NNNNNNN| NNNN| | NNNN| NNNNNNN| NNNN| |-----------------------------------------------------------------------------| | message overhead: NNNNNN nsec/packet | | raw transfer rate: NNNN KB/sec (without overhead) | |-----------------------------------------------------------------------------| | P I P E M E A S U R E M E N T S | |-----------------------------------------------------------------------------| | Send data into a pipe towards a receiving high priority task and wait | |-----------------------------------------------------------------------------| | matching sizes (_ALL_N) | |-----------------------------------------------------------------------------| | size(B) | time/packet (nsec) | KB/sec | |-----------------------------------------------------------------------------| | put | get | no buf | small buf| big buf | no buf | small buf| big buf | |-----------------------------------------------------------------------------| | N| N| NNNNNNN| NNNNNNN| NNNNNNN| N| N| N| | NN| NN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NN| NN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NN| NN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NNN| NNN| NNN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NNN| NNN| NNN| | NNNN| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| NNN| NNN| NNN| | NNNN| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| NNN| NNN| NNN| | NNNN| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| NNNN| NNNN| NNNN| |-----------------------------------------------------------------------------| | non-matching sizes (1_TO_N) to higher priority | |-----------------------------------------------------------------------------| | size(B) | time/packet (nsec) | KB/sec | |-----------------------------------------------------------------------------| | put | get | no buf | small buf| big buf | no buf | small buf| big buf | |-----------------------------------------------------------------------------| | N| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| N| N| N| | NN| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NN| NNNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNN| NN| NNNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NN| | NNNN| NN| NNNNNNNN| NNNNNNNN| NNNNNNNN| NN| NN| NN| | NNNN| NN| NNNNNNNNN| NNNNNNNNN| NNNNNNNNN| NN| NN| NN| | NNNN| N| NNNNNNNNN| NNNNNNNNN| NNNNNNNNN| N| N| N| |-----------------------------------------------------------------------------| | non-matching sizes (1_TO_N) to lower priority | |-----------------------------------------------------------------------------| | size(B) | time/packet (nsec) | KB/sec | |-----------------------------------------------------------------------------| | put | get | no buf | small buf| big buf | no buf | small buf| big buf | |-----------------------------------------------------------------------------| | N| NNNN| NNNNNNN| NNNNNN| NNNNNN| N| N| N| | NN| NNNN| NNNNNNN| NNNNNNN| NNNNNN| NN| NN| NN| | NN| NNNN| NNNNNNN| NNNNNNN| NNNNNN| NN| NN| NN| | NN| NNN| NNNNNNN| NNNNNNN| NNNNNN| NN| NN| NN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NNN| | NNN| NNN| NNNNNNN| NNNNNNN| NNNNNNN| NN| NN| NNN| | NNN| NN| NNNNNNNN| NNNNNNNN| NNNNNNN| NN| NN| NNN| | NNNN| NN| NNNNNNNN| NNNNNNNN| NNNNNNN| NN| NN| NNN| | NNNN| NN| NNNNNNNNN| NNNNNNNNN| NNNNNNN| NN| N| NNN| | NNNN| N| NNNNNNNNN|NNNNNNNNNN| NNNNNNN| N| N| NNNN| |-----------------------------------------------------------------------------| | END OF TESTS | |-----------------------------------------------------------------------------| PROJECT EXECUTION SUCCESSFUL