Explore >> Select a destination


You are here

fgiesen.wordpress.com
| | stefansf.de
1.9 parsecs away

Travel
| | [AI summary] The provided text discusses the misuse of the `volatile` keyword in C programming and its inability to address concurrency and memory ordering issues. It explains that `volatile` ensures that compiler optimizations do not remove accesses to variables, but it does not guarantee memory visibility or prevent hardware reordering. The text highlights that `volatile` is only suitable for specific use cases like memory-mapped I/O, and that for thread-safe operations, atomic types and memory barriers are necessary. It also covers examples of how `volatile` can lead to incorrect behavior in multi-threaded programs and how C11's memory model and atomic operations provide a more robust solution.
| | dgraph.io
3.7 parsecs away

Travel
| | [AI summary] The text provides an in-depth overview of the Ristretto cache library, highlighting its design and features. It discusses the implementation of TinyLFU and Sampled LFU for efficient cache admission and eviction policies, along with optimizations such as bloom filters, metrics tracking, and avoiding false sharing. The text also includes benchmark comparisons with other Go caches and outlines future improvements and potential applications.
| | paul.bone.id.au
2.4 parsecs away

Travel
| | CPU-bound performance often involves CPU caches. So lets dive in to CPU caches, some basics of how they're implemented, how they keep a consistent view...
| | leshow.github.io
25.8 parsecs away

Travel
| Unless you've been living under a rock; you know async/await is coming to rust stable. My last post was about implementing a simple protocol using manual futures, and interacting with tokio. It's only fitting, then, that I update the lib that post was inspired by to async/await and report back on my findings. If you're curious about my library or you use the window manager i3, it's available here or on crates under tokio-i3ipc.