[Openmcl-devel] Fine-grained locking

Ian Eslick eslick at media.mit.edu
Tue Mar 17 14:14:29 PDT 2009


I'm considering re-implementing aspects of the Elephant object  
persistence solution to move much of its functionality natively into  
lisp.  The current persistence method leverages the Berkeley DB  
locking library to control concurrent access to basic blocks in a  
binary heap.

Clozure is my performance target and I would like some input on the  
relative costs of two approaches to concurrency: fine-grained locking  
and copy-on-write.

The relative cost of these two approaches is highly dependent on  
access patterns and conflicts, of course, but I am interested in the  
developer's opinions on the relative low-level costs of grabbing and  
releasing locks on a per-object basis vs. copying objects and in  
particular how to perform highly efficient locking patterns.  Also,  
has anyone on the team looked closely at an implementation of a  
persistence solution on ClozureCL?

Thank you,
Ian





More information about the Openmcl-devel mailing list