Summary: The Power of Multiobjects
Yehuda Afek \Lambda Michael Merritt y Gadi Taubenfeld z
January 1, 1998
We consider shared memory systems that support multiobject operations in which pro
cesses may simultaneously access several objects in one atomic operation. We provide
upper and lower bounds on the synchronization power (consensus number) of multi
object systems as a function of the type and the number of objects that may be si
multaneously accessed in one atomic operation. These bounds imply that known clas
sifications of component objects fail to characterize the synchronization power of their
combination. In particular, we show that in the context of multiobjects, fetch&add ob
jects are less powerful than swap objects, which in turn are less powerful than queue ob
jects. This stands in contrast to the fact that swap can be implemented from fetch&add.
Herein we introduce a restricted notion of implementation, called direct implementa
tion. We show that, if an object Y has a direct implementation from X then also the Y
based multiobject can be implemented from the X based multiobject. Following the
above, we derive results such as: there is no direct implementations of a swap object,
and queue object from any collection of commutative objects (e.g., fetch&add, test&set).
A shared memory system is a collection of objects accessed by a collection of processes.