diff options
Diffstat (limited to 'perf')
-rw-r--r-- | perf/Makefile.am | 9 | ||||
-rw-r--r-- | perf/python/Makefile.am | 1 | ||||
-rw-r--r-- | perf/python/local_lat.py | 49 | ||||
-rw-r--r-- | perf/python/local_thr.py | 70 | ||||
-rw-r--r-- | perf/python/remote_lat.py | 61 | ||||
-rw-r--r-- | perf/python/remote_thr.py | 53 |
6 files changed, 2 insertions, 241 deletions
diff --git a/perf/Makefile.am b/perf/Makefile.am index a3c13ad..96dc19e 100644 --- a/perf/Makefile.am +++ b/perf/Makefile.am @@ -6,10 +6,6 @@ if BUILD_CPP PERF_DIR_CPP = cpp endif -if BUILD_PYTHON -PERF_DIR_P = python -endif - if BUILD_JAVA PERF_DIR_J = java endif @@ -18,6 +14,5 @@ if BUILD_RUBY PERF_DIR_R = ruby endif -SUBDIRS = $(PERF_DIR_C) $(PERF_DIR_CPP) $(PERF_DIR_P) \ - $(PERF_DIR_J) $(PERF_DIR_R) -DIST_SUBDIRS = c cpp python java ruby +SUBDIRS = $(PERF_DIR_C) $(PERF_DIR_CPP) $(PERF_DIR_J) $(PERF_DIR_R) +DIST_SUBDIRS = c cpp java ruby diff --git a/perf/python/Makefile.am b/perf/python/Makefile.am deleted file mode 100644 index c504159..0000000 --- a/perf/python/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -EXTRA_DIST = *.py diff --git a/perf/python/local_lat.py b/perf/python/local_lat.py deleted file mode 100644 index bc1d804..0000000 --- a/perf/python/local_lat.py +++ /dev/null @@ -1,49 +0,0 @@ -# -# Copyright (c) 2007-2010 iMatix Corporation -# -# This file is part of 0MQ. -# -# 0MQ is free software; you can redistribute it and/or modify it under -# the terms of the Lesser GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# 0MQ is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# Lesser GNU General Public License for more details. -# -# You should have received a copy of the Lesser GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -import sys -import time -import libpyzmq - -def main (): - if len (sys.argv) != 4: - print 'usage: local_lat <bind-to> <message-size> <roundtrip-count>' - sys.exit (1) - - try: - bind_to = sys.argv [1] - message_size = int (sys.argv [2]) - roundtrip_count = int (sys.argv [3]) - except (ValueError, OverflowError), e: - print 'message-size and roundtrip-count must be integers' - sys.exit (1) - - ctx = libpyzmq.Context (1, 1); - s = libpyzmq.Socket (ctx, libpyzmq.REP) - s.bind (bind_to) - - for i in range (0, roundtrip_count): - msg = s.recv () - assert len (msg) == message_size - s.send (msg) - - time.sleep (1) - -if __name__ == "__main__": - main () diff --git a/perf/python/local_thr.py b/perf/python/local_thr.py deleted file mode 100644 index 9a45294..0000000 --- a/perf/python/local_thr.py +++ /dev/null @@ -1,70 +0,0 @@ -# -# Copyright (c) 2007-2010 iMatix Corporation -# -# This file is part of 0MQ. -# -# 0MQ is free software; you can redistribute it and/or modify it under -# the terms of the Lesser GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# 0MQ is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# Lesser GNU General Public License for more details. -# -# You should have received a copy of the Lesser GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -import sys -import time -import libpyzmq - -def main (): - if len (sys.argv) != 4: - print 'usage: local_thr <bind-to> <message-size> <message-count>' - sys.exit (1) - - try: - bind_to = sys.argv [1] - message_size = int (sys.argv [2]) - message_count = int (sys.argv [3]) - except (ValueError, OverflowError), e: - print 'message-size and message-count must be integers' - sys.exit (1) - - ctx = libpyzmq.Context (1, 1); - s = libpyzmq.Socket (ctx, libpyzmq.SUB) - - s.setsockopt (libpyzmq.SUBSCRIBE , ""); - - # Add your socket options here. - # For example ZMQ_RATE, ZMQ_RECOVERY_IVL and ZMQ_MCAST_LOOP for PGM. - - s.bind (bind_to) - - msg = s.recv () - assert len (msg) == message_size - - start = time.clock () - - for i in range (1, message_count): - msg = s.recv () - assert len (msg) == message_size - - end = time.clock () - - elapsed = (end - start) * 1000000 - if elapsed == 0: - elapsed = 1 - throughput = (1000000.0 * float (message_count)) / float (elapsed) - megabits = float (throughput * message_size * 8) / 1000000 - - print "message size: %.0f [B]" % (message_size, ) - print "message count: %.0f" % (message_count, ) - print "mean throughput: %.0f [msg/s]" % (throughput, ) - print "mean throughput: %.3f [Mb/s]" % (megabits, ) - -if __name__ == "__main__": - main () diff --git a/perf/python/remote_lat.py b/perf/python/remote_lat.py deleted file mode 100644 index 52ab061..0000000 --- a/perf/python/remote_lat.py +++ /dev/null @@ -1,61 +0,0 @@ -# -# Copyright (c) 2007-2010 iMatix Corporation -# -# This file is part of 0MQ. -# -# 0MQ is free software; you can redistribute it and/or modify it under -# the terms of the Lesser GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# 0MQ is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# Lesser GNU General Public License for more details. -# -# You should have received a copy of the Lesser GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -import sys -import time -import libpyzmq - -def main (): - if len(sys.argv) != 4: - print 'usage: remote_lat <connect-to> <message-size> <roundtrip-count>' - sys.exit (1) - - try: - connect_to = sys.argv [1] - message_size = int (sys.argv [2]) - roundtrip_count = int (sys.argv [3]) - except (ValueError, OverflowError), e: - print 'message-size and message-count must be integers' - sys.exit (1) - - ctx = libpyzmq.Context (1, 1); - s = libpyzmq.Socket (ctx, libpyzmq.REQ) - s.connect (connect_to) - - msg = ''.join ([' ' for n in range (0, message_size)]) - - start = time.clock () - - for i in range (0, roundtrip_count): - s.send (msg) - msg = s.recv () - assert len (msg) == message_size - - end = time.clock () - - elapsed = (end - start) * 1000000 - latency = elapsed / roundtrip_count / 2 - - print "message size: %.0f [B]" % (message_size, ) - print "roundtrip count: %.0f" % (roundtrip_count, ) - print "mean latency: %.3f [us]" % (latency, ) - -if __name__ == "__main__": - main () - diff --git a/perf/python/remote_thr.py b/perf/python/remote_thr.py deleted file mode 100644 index 5fb8a2b..0000000 --- a/perf/python/remote_thr.py +++ /dev/null @@ -1,53 +0,0 @@ -# -# Copyright (c) 2007-2010 iMatix Corporation -# -# This file is part of 0MQ. -# -# 0MQ is free software; you can redistribute it and/or modify it under -# the terms of the Lesser GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# 0MQ is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# Lesser GNU General Public License for more details. -# -# You should have received a copy of the Lesser GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -import sys -import libpyzmq -import time - -def main (): - if len (sys.argv) != 4: - print 'usage: remote_thr <connect-to> <message-size> <message-count>' - sys.exit (1) - - try: - connect_to = sys.argv [1] - message_size = int (sys.argv [2]) - message_count = int (sys.argv [3]) - except (ValueError, OverflowError), e: - print 'message-size and message-count must be integers' - sys.exit (1) - - ctx = libpyzmq.Context (1, 1); - s = libpyzmq.Socket (ctx, libpyzmq.PUB) - - # Add your socket options here. - # For example ZMQ_RATE, ZMQ_RECOVERY_IVL and ZMQ_MCAST_LOOP for PGM. - - s.connect (connect_to) - - msg = ''.join ([' ' for n in range (0, message_size)]) - - for i in range (0, message_count): - s.send (msg) - - time.sleep (10) - -if __name__ == "__main__": - main () |