Title: Kernel Object Performance Description: The app_kernel test is used to measure the performance of the following kernel objects: message queues, semaphores, memory slabs, mailboxes and pipes. When the userspace version is selected (CONF_FILE=prj_user.conf), this benchmark will execute with four configurations (kernel/kernel, kernel/user, user/kernel and user/user). However, any configuration involving user threads will omit both the memory slabs and mailbox tests. -------------------------------------------------------------------------------- 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 192 bytes msg in MSGQ | NNNNNN| | dequeue 192 bytes msg in MSGQ | NNNNNN| | enqueue 1 byte msg in MSGQ to a waiting higher priority task | NNNNNN| | enqueue 4 bytes in MSGQ to a waiting higher priority task | NNNNNN| | enqueue 192 bytes in MSGQ 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| |-----------------------------------------------------------------------------| | average lock and unlock mutex | NNNNNN| |-----------------------------------------------------------------------------| | average alloc and dealloc memory page | NNNNNN| |-----------------------------------------------------------------------------| | 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