So, in this case P1 has the lock as well as shared access to it(after other processes attempt to acquire the lock for the first time) until it releases the lock because the other processors only attempt to read the lock's value.
ChandlerBing
To put it in other words, we have reduced the number of BusRdX signals issued and thus reduced the inter-connect traffic.
vrazdan
Is there a noticeable increase in power consumption when doing test-and-test-and-set? Because all the processors are tight looping over BusRd from the local cache, it would execute very fast and so consume more power. Or could the processor just do a context switch, do useful work, and then come back periodically to check on the lock (as discussed earlier in this lecture)?
So, in this case P1 has the lock as well as shared access to it(after other processes attempt to acquire the lock for the first time) until it releases the lock because the other processors only attempt to read the lock's value.
To put it in other words, we have reduced the number of BusRdX signals issued and thus reduced the inter-connect traffic.
Is there a noticeable increase in power consumption when doing test-and-test-and-set? Because all the processors are tight looping over BusRd from the local cache, it would execute very fast and so consume more power. Or could the processor just do a context switch, do useful work, and then come back periodically to check on the lock (as discussed earlier in this lecture)?