Archive for June, 2008
Lock-free interprocess communication introduced 4 algorithms which can increase interprocess communication efficient on SMP machines. In fact, A1,2,3 are just light-weight lock implementations, which reduced the overhead of system calls. Since they use busy loop for waiting, they also avoided most of the process switches when they failed to get the lock. A4 is a varied lock-free implementation, which requires readers keep a copy and check consistency. Since writers work on the main copy directly, this avoid the using of a GC. I believe before the lock-free technology get mature, this is the right approach that this technology can benefit us. For example, we can use A4 on optimizing JACKD’s client list. The test results on this paper shows that SMP brings more chance lock intensive process to get congestion. As a result, those process can performs even worse on SMP then on single processor machines.