プロセス間通信効率テスト

2306 ワード

ソース

Type


These are kinds of IPC in Linux as the following:
type
feature
pipe
unnamed pipe
fifo
named pipe
socketpair
unnamed unix domain socket
unix domain socket
named unix domain socket
TCP
remote domain socket
UDP
loopback interface

Benchmark


In my personal MacBook Pro (Retina, 13-inch, Late 2013) Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz, the benchmark is as the following:
pipe
128             512           1024          4096
1319Mb/s        5110Mb/s      8932Mb/s      20297Mb/s
1288233msg/s    1247449msg/s  1090370msg/s  619407msg/s

fifo
128             512           1024          4096
1358Mb/s        5491Mb/s      8440Mb/s      22018Mb/s
1326016msg/s    1340502msg/s  1030215msg/s  671929msg/s

socketpair
128             512           1024          4096
1117Mb/s        4401Mb/s      8869Mb/s      17207Mb/s
1090370msg/s    1074548msg/s  1082674msg/s  525121msg/s

uds
128             512           1024          4096
100Mb/s         102Mb/s       109Mb/s       97Mb/s
97600msg/s      24986msg/s    13289msg/s    2968msg/s

tcp
128             512           1024          4096
106Mb/s         143Mb/s       135Mb/s       128Mb/s
103508msg/s     34852msg/s    16529msg/s    3897msg/s

In Hasee Notebook Intel(R) Core(TM) i7-4710MQ @ 2.5GHz, with DDR3 2400 8GB x1, the benchmark is as the following:
pipe
128     512     1024        4096
1808Mb/s    6899Mb/s    10836Mb/s   33358Mb/s
1766023msg/s    1684301msg/s    1322749msg/s    1018006msg/s

fifo
128     512     1024        4096
884Mb/s     3758Mb/s    7333Mb/s    27825Mb/s
863310msg/s 917532msg/s 895158msg/s 849143msg/s

socketpair
128     512     1024        4096
752Mb/s     3591Mb/s    7418Mb/s    20385Mb/s
734559msg/s 876703msg/s 905538msg/s 622098msg/s

uds
128     512     1024        4096
70Mb/s      522Mb/s     843Mb/s     1175Mb/s
68744msg/s  127364msg/s 102957msg/s 35857msg/s

tcp
128     512     1024        4096
197Mb/s     498Mb/s     951Mb/s     1174Mb/s
192263msg/s 121701msg/s 116046msg/s 35828msg/s

udp
128     512     1024        4096
155Mb/s     497Mb/s     691Mb/s     2907Mb/s
151295msg/s 121241msg/s 84371msg/s  88712msg/s