Patent ID: 7475198

Claim:
An apparatus for serializing concurrent requests to multiple processors of a computing device, comprising: a signal merging tree structure having a root node and a plurality of leaf nodes for connecting a data consumer to the root node, the tree structure configured to serialize concurrent requests in the presence of race conditions, the tree structure farther configured to connect each of a plurality of request producers from among the multiple processors to a respective one of the plurality of leaf nodes; and a traversal mechanism configured to enable a request producer to transmit a signal from a leaf node corresponding to the request producer to the data consumer at the root node by setting all nodes on a path from the leaf node to the root node to a Boolean value true, the traversal mechanism farther configured to enable the data consumer to trace signal submissions of the plurality of request producers such that submission traversals by the plurality of request producers and trace traversals by the data consumer can be concurrently performed to allow the occurrence of data races between signal submissions by any of the plurality of request producers and between signal submissions by any of the plurality of request producers and the data consumer.