Source Code
The source code with the tests can be downloaded from here: ipc_bm.tar.gz.
To compile just adjust the variable CROSS_COMPILE in the main Makefile and do make all.
Results
The listings bellow show the output of the tests
POSIX Message Queue
<< Embedded Linux Interprocess Communication Mechanisms Benchmark - Part 1
The listings bellow show the output of the tests
POSIX Message Queue
* IPC Benchmark start - POSIX mq server... - POSIX mq client... - Large message send test: 0.52 secs, 3870.7 Msgs/s, 3870.7 KiB/s - Large message receive test: 0.52 secs, 3858.2 Msgs/s, 3858.2 KiB/s - Medium message send test: 0.50 secs, 4019.3 Msgs/s, 502.4 KiB/s - Medium message receive test: 0.46 secs, 4386.2 Msgs/s, 548.3 KiB/s - Small message send test: 0.50 secs, 4021.6 Msgs/s, 62.8 KiB/s - Small message receive test: 0.45 secs, 4426.0 Msgs/s, 69.2 KiB/s - Event posting test: 0.34 secs, 5918.5 Msgs/s, 23.1 KiB/s * IPC Benchmark end.Shared Memory
* IPC Benchmark start - POSIX shared memory server... - POSIX shared memory client... - Large message send test: 0.82 secs, 2453.5 Msgs/s, 2453.5 KiB/s - Large message receive test: 0.82 secs, 2447.1 Msgs/s, 2447.1 KiB/s - Medium message send test: 0.80 secs, 2503.6 Msgs/s, 313.0 KiB/s - Medium message receive test: 0.80 secs, 2494.6 Msgs/s, 311.8 KiB/s - Small message send test: 0.79 secs, 2519.9 Msgs/s, 39.4 KiB/s - Small message receive test: 0.80 secs, 2515.5 Msgs/s, 39.3 KiB/s - Event posting test: 0.79 secs, 2540.8 Msgs/s, 9.9 KiB/s * IPC Benchmark end.ONC RPC
* IPC Benchmark start - ONC RPC Server... - ONC RPC Client... - Large message send test - 1.73 secs, 1156.8 Msgs/s, 1156.8 KiB/s - Large message receive test - 1.74 secs, 1148.4 Msgs/s, 1148.4 KiB/s - Medium message send test - 1.65 secs, 1209.0 Msgs/s, 151.1 KiB/s - Medium message receive test - 1.65 secs, 1211.2 Msgs/s, 151.4 KiB/s - Small message send test - 1.64 secs, 1219.2 Msgs/s, 19.0 KiB/s - Small message receive test - 1.66 secs, 1202.1 Msgs/s, 18.8 KiB/s - Event posting test - 0.25 secs, 7904.5 Msgs/s, 30.9 KiB/s * IPC Benchmark end.
Comments
In order to run all the tests you must be sure that the following options are enabled in the kernel:
In order to run all the tests you must be sure that the following options are enabled in the kernel:
General Setup: [*] POSIX Message Queues ... Configure standard kernel features (for small systems) : [*] Use full shmem filesystem File systems: ... Pseudo filesystems: ... [*] Virtual memory file system support (former shm fs)
<< Embedded Linux Interprocess Communication Mechanisms Benchmark - Part 1