[infinispan-dev] DeadlockDetection (DLD) - benchmarks and status

Mircea Markus mircea.markus at jboss.com
Tue Jul 21 06:19:10 EDT 2009


Hi,

I've extended the original DLD design to also support deadlock detection 
on local caches and updated design forum [1].
This, together with the replicated deadlock detection is implemented in 
trunk (some minor stuff to do still: DLD for aggregation methods like 
clear and addAll + unit test).

I've also created a benchmark to test what's the throughput (tx/min) 
between caches running with and without DLD.
You can find full test description within test class: 
http://anonsvn.jboss.org/repos/infinispan/trunk/core/src/test/java//org/infinispan/profiling/DeadlockDetectionPerformanceTest.java
Local DLD does good job (cca 5.5 times better) but replicated DLD does 
extraordinary: cca 101 better throughput (see attached).
I think DLD is cool stuff and differentiates us a bit from competition, 
afaik none of them have a DLD.

One more thing that's worth mentioning: while running DLD tests I've 
noticed that if all tx acquire locks on keys in same order, then no 
deadlocks exists. This is logic and might seem obvious, but is not 
stated anywhere and the performance increase by doing this might be very 
dramatic. I think we should document this as a best practice when it 
comes to transactions - any suggestion where?

I also intend to blog about it shortly.

Cheers,
Mircea

[1] http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4244838#4244838


-------------- next part --------------
A non-text attachment was scrubbed...
Name: DLD_local.JPG
Type: image/jpeg
Size: 35305 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/infinispan-dev/attachments/20090721/31e5abbd/attachment-0004.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DLD_replicated.JPG
Type: image/jpeg
Size: 40498 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/infinispan-dev/attachments/20090721/31e5abbd/attachment-0005.jpe 


More information about the infinispan-dev mailing list