Description:
- This application includes sender, engine, receiver units.
- sender and receiver are located on the same node when engine on another.
- Each connection in sender program constantly sends messages to engine
program at a specific message rate.
- The engine redirect received messages to the connections with receiver process.
How to compile:
- gcc testbed.c -o testbed.out -g -Wall -Werror -DTIMESTAMP_ENABLED=1 -DTIMESTAMP_RDTSC=1 -DNDEBUG -lrt
Compilation options:
-DTIMESTAMP_ENABLED=1
-DTIMESTAMP_ENABLED=0 (default)
-DTIMESTAMP_RDTSC=1 - rdtsc based time
-DTIMESTAMP_RDTSC=0 - clock_gettime() (default ON)
-DVMA_ZCOPY_ENABLED=1
-DVMA_ZCOPY_ENABLED=0 (default)
-DNDEBUG – ON/OFF assert() and log_trace()
How to use:
- Display usage help
./testbed.out --help
- Launch using right order as receiver->engine->sender:
For example: sender and receiver are launched on 10.0.0.9 engine is launched on 10.0.0.10
./testbed.out --receiver=:10.0.0.9 --scount=20 --rcount=10 --msg-size=500 --msg-rate=2000 -d4 -n8000
./testbed.out --engine=10.0.0.9:10.0.0.10 --scount=20 --rcount=10 --msg-size=500 --msg-rate=2000 -d4 -n8000
./testbed.out --sender=10.0.0.10:10.0.0.9 --scount=20 --rcount=10 --msg-size=500 --msg-rate=2000 -d4 -n8000