Question

A small addition we made to the wait-free protocol was to have a thread add its newly appended node to the head array in Line 28 even though it may have already added it in Line 20. This is necessary because, unlike in the lock-free protocol, it could be that the thread’s node was added by another thread in Line 20, and that “helping” thread stopped at Line 20 right after updating the node’s sequence number but before updating the head array. 1. Explain how removing Line 28 would violate Lemma 6.4.4. 2. Would the algorithm still work correctly?

   A small addition we made to the wait-free protocol was
to have a thread add its newly appended node to the head array in
Line 28 even though it may have already added it in Line 20. This is
necessary because, unlike in the lock-free protocol, it could be that
the thread’s node was added by another thread in Line 20, and that
“helping” thread stopped at Line 20 right after updating the node’s
sequence number but before updating the head array.
1. Explain how removing Line 28 would violate Lemma 6.4.4.
2. Would the algorithm still work correctly?
Show more…
The Art of Multiprocessor Programming
The Art of Multiprocessor Programming
Nir Shavit, Maurice… 1st Edition
Chapter 6, Problem 82 ↓
AceChat toggle button
Close icon
Ace pointing down

Please give Ace some feedback

Your feedback will help us improve your experience

Thumb up icon Thumb down icon
Thanks for your feedback!
Profile picture
A small addition we made to the wait-free protocol was to have a thread add its newly appended node to the head array in Line 28 even though it may have already added it in Line 20. This is necessary because, unlike in the lock-free protocol, it could be that the thread’s node was added by another thread in Line 20, and that “helping” thread stopped at Line 20 right after updating the node’s sequence number but before updating the head array. 1. Explain how removing Line 28 would violate Lemma 6.4.4. 2. Would the algorithm still work correctly?
Close icon
Play audio
Feedback
Powered by NumerAI
Need help? Use Ace
Ace is your personal tutor. It breaks down any question with clear steps so you can learn.
Start Using Ace
Ace is your personal tutor for learning
Step-by-step explanations
Instant summaries
Summarize YouTube videos
Understand textbook images or PDFs
Study tools like quizzes and flashcards
Listen to your notes as a podcast
Continue solving this problem
Create a free account to:
  • View full step-by-step solution
  • Ask follow-up questions with Ace AI
  • Save progress and study later
Continue Free
Join the community

18,000,000+

Students on Numerade


Trusted by students at 8,000+ universities

Numerade

Get step-by-step video solution
from top educators

Continue with Clever
or



By creating an account, you agree to the Terms of Service and Privacy Policy
Already have an account? Log In

A free answer
just for you

Watch the video solution with this free unlock.

Numerade

Log in to watch this video
...and 100,000,000 more!


EMAIL

PASSWORD

OR
Continue with Clever