TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Lock-Free Algorithms For Ultimate Performance

42 pointsby ari_elleabout 12 years ago

5 comments

colandermanabout 12 years ago
Here's one better, if all your data is strictly less than (not equal to) a cache line (usually 64 bytes) in size, and your processor guarantees memory ordering within a cache line (most do):<p>1) Keep head and tail pointers local to the consumer and producer.<p>2) Associate a bit with each entry in the queue which denotes whether the entry is full or not. The bit must live within the same cache line as the entry itself.<p>3) Block on this bit, rather than head &#38; tail pointers.<p>4) Set an entry's bit after filling the entry; clear it before.<p>5) You can now elide the memory fence (implicit in the .lazySet() method of the atomic objects). Performance will skyrocket.
评论 #5506092 未加载
svagabout 12 years ago
The presentation in pdf <a href="http://qconsf.com/dl/qcon-sanfran-2012/slides/MartinThompson_LockFreeAlgorithmsForUltimatePerformanceMOVEDTOBALLROOMA.pdf" rel="nofollow">http://qconsf.com/dl/qcon-sanfran-2012/slides/MartinThompson...</a> for off-line viewing.
mglabout 12 years ago
If you interested in HPC topic, especially in terms of HFT, you should his previous presentation on LMAX system: <a href="http://www.infoq.com/presentations/LMAX" rel="nofollow">http://www.infoq.com/presentations/LMAX</a>
exDM69about 12 years ago
Really good presentation, although a bit long.<p>What was most interesting to me was the actual performance figures and the small optimizations that yield big improvements.
cnlwsuabout 12 years ago
great presentation