zephyr/tests/benchmarks/latency_measure
Daniel Leung b7eb04b300 x86: consolidate x86_64 architecture, SoC and boards
There are two set of code supporting x86_64: x86_64 using x32 ABI,
and x86 long mode, and this consolidates both into one x86_64
architecture and SoC supporting truly 64-bit mode.

() Removes the x86_64:x32 architecture and SoC, and replaces
   them with the existing x86 long mode arch and SoC.
() Replace qemu_x86_64 with qemu_x86_long as qemu_x86_64.
() Updates samples and tests to remove reference to
   qemu_x86_long.
() Renames CONFIG_X86_LONGMODE to CONFIG_X86_64.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2019-10-25 17:57:55 -04:00
..
boards boards: arm: Add support for NXP FRDM-K22F board 2019-09-25 02:18:38 -07:00
src cleanup: include/: move misc/printk.h to sys/printk.h 2019-06-27 22:55:49 -04:00
CMakeLists.txt latency_measure: Fix bug where the wrong prj.conf file was used 2019-05-30 08:27:47 -04:00
README.txt benchmarks: convert latency_measure to unified kernel 2017-03-25 12:38:50 +00:00
prj.conf latency_measure: Remove commented-out code 2019-05-30 08:27:47 -04:00
testcase.yaml x86: consolidate x86_64 architecture, SoC and boards 2019-10-25 17:57:55 -04:00

README.txt

Title: Latency Measurement

Description:

This benchmark measures the latency of selected capabilities

IMPORTANT: The sample output below was generated using a simulation
environment, and may not reflect the results that will be generated using other
environments (simulated or otherwise).


Sample Output:

***** BOOTING ZEPHYR OS v1.7.99 - BUILD: Mar 24 2017 22:46:05 *****
|-----------------------------------------------------------------------------|
|                            Latency Benchmark                                |
|-----------------------------------------------------------------------------|
|  tcs = timer clock cycles: 1 tcs is 10 nsec                                 |
|-----------------------------------------------------------------------------|
| 1 - Measure time to switch from ISR back to interrupted thread              |
| switching time is 12591 tcs = 125910 nsec                                   |
|-----------------------------------------------------------------------------|
| 2 - Measure time from ISR to executing a different thread (rescheduled)       |
| switch time is 8344 tcs = 83440 nsec                                        |
|-----------------------------------------------------------------------------|
| 3 - Measure average time to signal a sema then test that sema               |
| Average semaphore signal time 63 tcs = 638 nsec                             |
| Average semaphore test time 49 tcs = 498 nsec                               |
|-----------------------------------------------------------------------------|
| 4- Measure average time to lock a mutex then unlock that mutex              |
| Average time to lock the mutex 107 tcs = 1078 nsec                          |
| Average time to unlock the mutex 92 tcs = 929 nsec                          |
|-----------------------------------------------------------------------------|
| 5 - Measure average context switch time between threads using (k_yield)       |
| Average thread context switch using yield 110 tcs = 1107 nsec                 |
|-----------------------------------------------------------------------------|
| 6 - Measure average context switch time between threads (coop)              |
| Average context switch time is 88 tcs = 882 nsec                            |
|-----------------------------------------------------------------------------|
===================================================================
PROJECT EXECUTION SUCCESSFUL