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