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