smc_run - Man Page
start a TCP socket program with the capability to use SMC as networking protocol
Synopsis
Description
smc_run starts a program specified as argument with its parameters, allowing to use the SMC protocol for program-used TCP socket connections.
The script specifies libsmc-preload.so as a preload shared library for the Linux program loader, and may adjust transmit and receive buffer sizes to SIZE by setting socket options SO_RCVBUF and SO_SNDBUF respectively. SIZE can be specified in Bytes or using metric prefixes k and m, e.g. 8k...1024k/1m.
The preload library libsmc-preload.so intercepts a few TCP socket calls and triggers the equivalent execution through SMC.
Note: If it is not possibile to use smc_run, the libsmc-preload.so may be installed as apreload library via environment variable LD_PRELOAD. Use environment varibles SMC_SNDBUF and SMC_RCVBUF to request specific transmit and receive buffer sizes respectively. Supports metric prefixes k and m.
The following options can be specified:
- -d
- Display additional diagnostic messages during the program execution. 
- -h
- Display a brief usage information. 
- -r SIZE
- Request receive buffer size SIZE. 
 Notes:- May be overridden by the application.
- Increases net.core.rmem_max if necessary.
 
- -t SIZE
- Request transmit buffer size SIZE. 
 Notes:- May be overridden by the application.
- Increases net.core.wmem_max if necessary.
 
- -v
- Display version information. 
Return Codes
On success, the smc_run command returns 0. If an error occurs smc_run writes a message to stdout and completes with a return code other than 0.
- 1
- An invalid option was specified. 
Examples
Run program foo using SMC, requesting a receive buffer size of 512KB
$ smc_run -r 512k ./foo
See Also
af_smc(7), smc_chk(8) smc_pnet(8), smc_rnics(8), smcd(8), smcr(8), smcss(8), tcp(7)
Referenced By
af_smc(7), smc_pnet(8), smcss(8).