1Title: Kernel Object Performance
2
3Description:
4
5The app_kernel test is used to measure the performance of the following
6kernel objects: message queues, semaphores, memory slabs, mailboxes and pipes.
7
8--------------------------------------------------------------------------------
9
10Sample Output:
11
12|-----------------------------------------------------------------------------|
13|          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    |
14|-----------------------------------------------------------------------------|
15|-----------------------------------------------------------------------------|
16| enqueue 1 byte msg in FIFO                                       |    NNNNNN|
17| dequeue 1 byte msg in FIFO                                       |    NNNNNN|
18| enqueue 4 bytes msg in FIFO                                      |    NNNNNN|
19| dequeue 4 bytes msg in FIFO                                      |    NNNNNN|
20| enqueue 1 byte msg in FIFO to a waiting higher priority task     |    NNNNNN|
21| enqueue 4 bytes in FIFO to a waiting higher priority task        |    NNNNNN|
22|-----------------------------------------------------------------------------|
23| signal semaphore                                                 |    NNNNNN|
24| signal to waiting high pri task                                  |    NNNNNN|
25| signal to waiting high pri task, with timeout                    |    NNNNNN|
26|-----------------------------------------------------------------------------|
27| average lock and unlock mutex                                    |    NNNNNN|
28|-----------------------------------------------------------------------------|
29| average alloc and dealloc memory page                            |    NNNNNN|
30|-----------------------------------------------------------------------------|
31|                M A I L B O X   M E A S U R E M E N T S                      |
32|-----------------------------------------------------------------------------|
33| Send mailbox message to waiting high priority task and wait                 |
34| repeat for  128 times and take the average                                  |
35|-----------------------------------------------------------------------------|
36|   size(B) |       time/packet (nsec)       |          KB/sec                |
37|-----------------------------------------------------------------------------|
38|          N|                          NNNNNN|                               N|
39|          N|                          NNNNNN|                              NN|
40|         NN|                          NNNNNN|                              NN|
41|         NN|                          NNNNNN|                              NN|
42|         NN|                          NNNNNN|                              NN|
43|        NNN|                          NNNNNN|                             NNN|
44|        NNN|                          NNNNNN|                             NNN|
45|        NNN|                          NNNNNN|                             NNN|
46|       NNNN|                         NNNNNNN|                             NNN|
47|       NNNN|                         NNNNNNN|                            NNNN|
48|       NNNN|                         NNNNNNN|                            NNNN|
49|       NNNN|                         NNNNNNN|                            NNNN|
50|-----------------------------------------------------------------------------|
51| message overhead:      NNNNNN     nsec/packet                               |
52| raw transfer rate:           NNNN KB/sec (without overhead)                 |
53|-----------------------------------------------------------------------------|
54|                   P I P E   M E A S U R E M E N T S                         |
55|-----------------------------------------------------------------------------|
56| Send data into a pipe towards a receiving high priority task and wait       |
57|-----------------------------------------------------------------------------|
58|                          matching sizes (_ALL_N)                            |
59|-----------------------------------------------------------------------------|
60|   size(B) |       time/packet (nsec)       |          KB/sec                |
61|-----------------------------------------------------------------------------|
62| put | get |  no buf  | small buf| big buf  |  no buf  | small buf| big buf  |
63|-----------------------------------------------------------------------------|
64|    N|    N|   NNNNNNN|   NNNNNNN|   NNNNNNN|         N|         N|         N|
65|   NN|   NN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
66|   NN|   NN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
67|   NN|   NN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
68|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
69|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|       NNN|       NNN|       NNN|
70|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|       NNN|       NNN|       NNN|
71| NNNN| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|       NNN|       NNN|       NNN|
72| NNNN| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|       NNN|       NNN|       NNN|
73| NNNN| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|      NNNN|      NNNN|      NNNN|
74|-----------------------------------------------------------------------------|
75|                      non-matching sizes (1_TO_N) to higher priority         |
76|-----------------------------------------------------------------------------|
77|   size(B) |       time/packet (nsec)       |          KB/sec                |
78|-----------------------------------------------------------------------------|
79| put | get |  no buf  | small buf| big buf  |  no buf  | small buf| big buf  |
80|-----------------------------------------------------------------------------|
81|    N| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|         N|         N|         N|
82|   NN| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
83|   NN| NNNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
84|   NN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
85|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
86|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
87|  NNN|   NN|  NNNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|        NN|
88| NNNN|   NN|  NNNNNNNN|  NNNNNNNN|  NNNNNNNN|        NN|        NN|        NN|
89| NNNN|   NN| NNNNNNNNN| NNNNNNNNN| NNNNNNNNN|        NN|        NN|        NN|
90| NNNN|    N| NNNNNNNNN| NNNNNNNNN| NNNNNNNNN|         N|         N|         N|
91|-----------------------------------------------------------------------------|
92|                      non-matching sizes (1_TO_N) to lower priority          |
93|-----------------------------------------------------------------------------|
94|   size(B) |       time/packet (nsec)       |          KB/sec                |
95|-----------------------------------------------------------------------------|
96| put | get |  no buf  | small buf| big buf  |  no buf  | small buf| big buf  |
97|-----------------------------------------------------------------------------|
98|    N| NNNN|   NNNNNNN|    NNNNNN|    NNNNNN|         N|         N|         N|
99|   NN| NNNN|   NNNNNNN|   NNNNNNN|    NNNNNN|        NN|        NN|        NN|
100|   NN| NNNN|   NNNNNNN|   NNNNNNN|    NNNNNN|        NN|        NN|        NN|
101|   NN|  NNN|   NNNNNNN|   NNNNNNN|    NNNNNN|        NN|        NN|        NN|
102|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|       NNN|
103|  NNN|  NNN|   NNNNNNN|   NNNNNNN|   NNNNNNN|        NN|        NN|       NNN|
104|  NNN|   NN|  NNNNNNNN|  NNNNNNNN|   NNNNNNN|        NN|        NN|       NNN|
105| NNNN|   NN|  NNNNNNNN|  NNNNNNNN|   NNNNNNN|        NN|        NN|       NNN|
106| NNNN|   NN| NNNNNNNNN| NNNNNNNNN|   NNNNNNN|        NN|         N|       NNN|
107| NNNN|    N| NNNNNNNNN|NNNNNNNNNN|   NNNNNNN|         N|         N|      NNNN|
108|-----------------------------------------------------------------------------|
109|         END OF TESTS                                                        |
110|-----------------------------------------------------------------------------|
111PROJECT EXECUTION SUCCESSFUL
112