summaryrefslogtreecommitdiffstats
path: root/source3/wscript_build
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2014-08-21 14:32:07 +0000
committerJeremy Allison <jra@samba.org>2014-08-23 00:24:18 +0200
commit4288c5496bcfa530066d5e8e4927472715b71465 (patch)
tree7faed0b498e5ab5d9aef9d7e5d425d0bf53027cb /source3/wscript_build
parentff9a083363b3749e0f9e346ea31e95c5e35e94ff (diff)
downloadsamba-4288c5496bcfa530066d5e8e4927472715b71465.tar.gz
samba-4288c5496bcfa530066d5e8e4927472715b71465.tar.xz
samba-4288c5496bcfa530066d5e8e4927472715b71465.zip
messaging3: Add msg_sink/source -- perftest
With this pair of programs I did some performance tests of the messaging system. Guess what -- I found two bugs :-) See the subsequent patches. With 1500 msg_source processes I can generate message overload: A Intel(R) Xeon(R) CPU L5640 @ 2.27GHz can receive roughly 100k messages per second. When using messaging_read_send/recv user/system time is roughly even, a bit more work done in user space. When using messaging_register, due to less malloc activity, user space chews a lot less. By the way: 1.500 helper threads in a blocking sendto() against a single datagram socket reading as fast as it can (with epoll_wait in between) only drove the loadavg to 12 on a 24-core machine. So I guess unix domain datagram sockets are pretty well protected against overload. No thundering herd or so. Interestingly "top" showed msg_sink at less than 90% CPU, although it was clearly the bottleneck. But that must be a "top" artifact. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/wscript_build')
-rwxr-xr-xsource3/wscript_build14
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/wscript_build b/source3/wscript_build
index 4365d61ba7..740ab76514 100755
--- a/source3/wscript_build
+++ b/source3/wscript_build
@@ -1292,6 +1292,20 @@ bld.SAMBA3_BINARY('msgtest',
param''',
install=False)
+bld.SAMBA3_BINARY('msg_sink',
+ source='torture/msg_sink.c',
+ deps='''
+ talloc
+ param''',
+ install=False)
+
+bld.SAMBA3_BINARY('msg_source',
+ source='torture/msg_source.c',
+ deps='''
+ talloc
+ param''',
+ install=False)
+
bld.SAMBA3_BINARY('smbcacls',
source='utils/smbcacls.c',
deps='''