What' s the advantage of LL/SC comparing with CAS(compare and swap) in computer architecture? I think LL/SC can case livelock in many-core system, and case ABA problem, but CAS does not. I can not find out any advantage of LL/SC comparing with CAS. Anyone can tell me?
What' s the advantage of LL/SC when compared with CAS (compare-and-swap)?
2k views Asked by winter At
1
There are 1 answers
Related Questions in CPU-ARCHITECTURE
- Real-world analog to TIS-100
- What is faster: equal check or sign check
- Multicore clock counter consistency
- How do MemReq and MemResp exactly work in RoccIO - RISCV
- What is the simplest Turing complete CPU instruction set which can execute code from ROM?
- Had 16-bit DOS a memory access limitation of 1 MB? If yes, how?
- Are correct branch predictions free?
- Assembly: why some x86 opcodes are invalid in x64?
- Memory barriers force cache coherency?
- FreeRTOS : How to measure context switching time?
Related Questions in CAS
- LDAP user attributes from CAS
- I am using ActiveX control and installing it by msi. The method written in ActiveX user control class are firing but UI is not visible
- Really simple codeigniter access control
- CAS Redirect Loop
- org.jasig.cas.authentication.handler.DefaultPasswordEncoder sha1 and md5 not working plaintext is fine
- CAS with Glassfish Cluster and load blancer
- How to implement LDAP and SSO?
- Laravel with phpCAS, LoadBalancing Causing Infinite Redirects (Database Session)
- How to config webapp using Spring security SSO with cas and running on Jboss 7.1?
- CAS in Rest API
Related Questions in COMPARE-AND-SWAP
- Does the following lock-free code exhibit a race-condition?
- weakCompareAndSwap vs compareAndSwap
- X32 and __gnu_cxx::__exchange_and_add_single?
- java - stealing bits from references
- Cuda atomics and conditional branches
- CAS vs synchronized performance
- using isBlank() in google apps script to mark column
- CMPXCHG16B correct?
- Compare and Swap (CAS) implementation in EhCache
- How to implement double-word compare and swap in C/Linux?
Related Questions in LOAD-LINK-STORE-CONDITIONAL
- ARM LL/SC exclusive access by register width or cache line width?
- How does x86 handle store conditional instructions?
- How do ldrex / strex make atomic_add in ARM an atomic operation?
- Lock-free C++11 example using Load-link/store-conditional to prevent ABA?
- In risc-v architecture, how does store conditional instruction realize that the memory is modified?
- What' s the advantage of LL/SC when compared with CAS (compare-and-swap)?
- ARM Cortex-M4/7: Do regular memory accesses between LDREX/STREX invalidate the exclusive monitor
- __sync_add_and_fetch triggers an sError interrupt on raspberry pi 4b
- compare-and-swap atomic operation vs Load-link/store-conditional operation
- What's 'reservation' in RISC-V's 'lr' instruction?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Since nobody has answered, LL/SC does not suffer from the ABA problem since the conditional store will fail if the address referenced by the LL is modified. Furthermore, it can't livelock since one or more LL/SC pairs failing implies another succeeded. A CAS could also potentially be more expensive, since it may require the invalidate queue be flushed.