Skip navigation
This entry actually started out with a title like "JGroups 2.5 CR-1 released". Hmm, very boring ! Scrapped that, as I really wanted to talk about the 2.5 CR-1 performance, which is GREAT!

 

I mean, don't get me wrong, 2.5 has some cool features, like the concurrent stack, out-of-band messages, better thread naming and so on. But I'll discuss those when I release 2.5 GA.

Okay, so I ran the perf.Test which ships with JGroups, so anyone can try it out, in our Atlanta lab. The hardware and software setup is described here. I ran the tests with the standard tcp.xml config file from JGroups/conf with only slight modifications, e.g. a bigger thread pool.

 

 

So far, while JGroups has been quite good at 100Mbps ethernet, and has been able to reach ~ 11MB/sec/node, it has never been able to utilize the bandwidth available to 1GB switched ethernet (ca 125MB/sec). But this changed dramatically with 2.5 and the concurrent stack. I ran only selected tests, and will discuss performance in more details later.

 

 

Look at the numbers I got:

 

 

  • 6 nodes, 5M 5K messages with tcp.xml, 500 threads/sender: 15'105 msgs/sec/node, throughput=75.52MB/sec/node
  • 6 nodes, 5M 5K messages with tcp.xml: 17'832 msgs/sec/node, throughput=89.16MB/sec
  • 8 nodes, 5M 1K messages with tcp.xml: 63'513 msgs/sec/node, throughput=63.51MB/sec
  • 8 nodes, 5M 5K messages with tcp.xml: 16'600 msgs/sec/node, throughput=83MB/sec
As an example, running 8 nodes where every node sent 5 million 5'000 byte messages, JGroups reached 16'000 messages/sec per node for a throughput of 83MB/sec per node ! In 2.4, this used to be around 30-40MB/sec/node !

 

 

This is very good news, not just for JGroups but also all the projects which run on top of it. For example, we've been measuring JBossCache and PojoCache performance, and this speedup will have a direct positive effect on them.

 

 

Okay, enough said, I will blog more once 2.5 goes GA. Enjoy !