Limitations

Limitations

There are four limitations in the current version of ObjLayer. The most restrictive semantic limitation is that there are no primitives for uncaching objects due to insufficient memory capacity, something hardware caching can easily do. The issues are more tricky here, for instance, liveness can be hard to ensure: the application has to ensure positive progress of computation ``using'' an object before it can potentially be uncached by ObjLayer. Also, the application might need to choose which object is best to uncache.

The current implementation has three limitations. Object ID's are not recycled, so the usable object space (with processors, in the current version) steadily shrinks with time. Besides, a processor may run out of ID's even when some other processor has ID's available (we use a direct mapping from the processors number). Rectifying this involves solving a distributed garbage collection problem. The validation protocol at present asks only the latest owner (creator or modifier) for a later version. This may give rise to hot spots at the latest owner. We are considering validation messages to be propagated along a bounded degree graph.



Chih-Po Wen
Wed Sep 13 23:57:28 PDT 1995