linux2021
目的: 檢驗學員對 RCU 同步機制, lock-free 程式設計, concurrent linked list, thread-local storage (tls), atomics, SMP 的 false-sharing 的認知
1
考慮二種 concurrent linked list 操作手法:
在 AMD Ryzen Threadripper 2990WX 32-Core Processor 上,參考的效能評比:
bench-lock
982500
operations per secondbench-lockfree
10771081
operations per second原始程式碼:
執行 make
可建構出二個執行檔: bench-lock
和 bench-lockfree
請參照 lock.c 的行為,補完 lockfree.c 程式碼,使得 bench-lockfree
執行符合預期,並不該遇到任何 assertion 錯誤。
作答區
XXX = ? (第 97 行)
YYY = ? (第 288 行)
ZZZ = ? (第 288 行)
RRR = ? (第 489 行)