diff options
author | Martin Sustrik <sustrik@fastmq.commkdir> | 2009-09-16 14:03:42 +0200 |
---|---|---|
committer | Martin Sustrik <sustrik@fastmq.commkdir> | 2009-09-16 14:03:42 +0200 |
commit | a71d00288008b7ed1dc91b6ad3d5fdf25a5e683e (patch) | |
tree | c4c1dde7b4cb638c88fc92647bdae836ab8216ea /perf/java/local_thr.java | |
parent | 4631fde7e385ea31e85f41290614afb9bda391c9 (diff) | |
parent | 7a5db6041f4f11ed502fa7446da900509dedb00f (diff) |
Merge branch 'master' of git@github.com:sustrik/zeromq2
Diffstat (limited to 'perf/java/local_thr.java')
-rw-r--r-- | perf/java/local_thr.java | 68 |
1 files changed, 37 insertions, 31 deletions
diff --git a/perf/java/local_thr.java b/perf/java/local_thr.java index f5d3718..450aed5 100644 --- a/perf/java/local_thr.java +++ b/perf/java/local_thr.java @@ -21,45 +21,51 @@ import org.zmq.*; class local_thr { - public static void main (String [] args) - { - if (args.length != 3) { - System.out.println ("usage: local_thr <bind-to> " + - "<message size> <message count>"); - return; - } + public static void main (String [] args) + { + if (args.length != 3) { + System.out.println ("usage: local_thr <bind-to> " + + "<message size> <message count>"); + return; + } - String bindTo = args [0]; - long messageSize = Integer.parseInt (args [1]); - long messageCount = Integer.parseInt (args [2]); + String bindTo = args [0]; + long messageSize = Integer.parseInt (args [1]); + long messageCount = Integer.parseInt (args [2]); - org.zmq.Context ctx = new org.zmq.Context (1, 1); + org.zmq.Context ctx = new org.zmq.Context (1, 1); - org.zmq.Socket s = new org.zmq.Socket (ctx, org.zmq.Socket.P2P); - s.bind (bindTo); + org.zmq.Socket s = new org.zmq.Socket (ctx, org.zmq.Socket.SUB); - byte [] data = s.recv (0); - assert (data.length == messageSize); + s.setsockopt (org.zmq.Socket.SUBSCRIBE , "*"); - long start = System.currentTimeMillis (); + // Add your socket options here. + // For example ZMQ_RATE, ZMQ_RECOVERY_IVL and ZMQ_MCAST_LOOP for PGM. - for (int i = 1; i != messageCount; i ++) { - data = s.recv (0); - assert (data.length == messageSize); - } + s.bind (bindTo); - long end = System.currentTimeMillis (); + byte [] data = s.recv (0); + assert (data.length == messageSize); - long elapsed = (end - start) * 1000; - if (elapsed == 0) - elapsed = 1; + long start = System.currentTimeMillis (); - long throughput = messageCount * 1000000 / elapsed; - double megabits = (double) (throughput * messageSize * 8) / 1000000; + for (int i = 1; i != messageCount; i ++) { + data = s.recv (0); + assert (data.length == messageSize); + } - System.out.println ("message size: " + messageSize + " [B]"); - System.out.println ("message count: " + messageCount); - System.out.println ("mean throughput: " + throughput + "[msg/s]"); - System.out.println ("mean throughput: " + megabits + "[Mb/s]"); - } + long end = System.currentTimeMillis (); + + long elapsed = (end - start) * 1000; + if (elapsed == 0) + elapsed = 1; + + long throughput = messageCount * 1000000 / elapsed; + double megabits = (double) (throughput * messageSize * 8) / 1000000; + + System.out.println ("message size: " + messageSize + " [B]"); + System.out.println ("message count: " + messageCount); + System.out.println ("mean throughput: " + throughput + "[msg/s]"); + System.out.println ("mean throughput: " + megabits + "[Mb/s]"); + } } |