LOADING

ArcShift: Going faster than RwLock

In this lightning talk, we take a look at ArcShift, a lock-free data structure for shared data that still needs to be mutated.

Anders Musikka
Anders is a senior engineer at Helsing, with 20+ years of experience designing high performance and distributed systems.
About This Talk

In this lightning talk, we take a look at ArcShift, a lock-free data structure for shared data that still needs to be mutated.

While the standard library's Arc<RwLock<T>> allows multiple threads to access and modify the same object, even read-accesses require somewhat expensive atomic operations.

ArcShift allows multiple writers without penalizing readers, and give examples on how (and how not to) write lock-free data structures. We'll also dive into how ArcShift handles the memory reclamation problem (or cheats its way out of it).

more great talks

Might Be Interesting

Day 1
  —  
7:00 pm
arrow pointing right icon

Rustikon afterparty

Join us at the Rustikon afterparty!

Day 1
  —  
2:00 pm
arrow pointing right icon

A better way of doing Async Rust

We will explore some ways to make Async Rust programming more enjoyable and more efficient at the same time.

Day 1
  —  
10:10 am
arrow pointing right icon

2 years of Rust after 10 years of Scala - the good, the bad and … not so ugly

After spending many happy years in Scala, not mutating anything but copying objects faster than rabbits breed I ventured into the world where each allocation is carefully examined and it is perfectly normal to reuse the same list for different purposes.

Day 1
  —  
11:15 am
arrow pointing right icon

Rust Without Tears: A Guide to Avoiding Common Traps

This talk dives into common anti-patterns, offering practical tips to sidestep frustration. Whether you're new to Rust or leveling up, you’ll leave with insights to write clean, idiomatic, and maintainable code—without the tears.

Day 1
  —  
4:15 pm
arrow pointing right icon

The simplest way to build resilient applications

In this talk, we will discuss how you can use Durable Execution to harden your applications in a few key areas: workflows, asynchronous tasks, microservice orchestration, and event processing.

Day 1
  —  
3:40 pm
arrow pointing right icon

Profile-Guided Optimization (PGO) in Rust: unknown parts

I applied PGO to many kinds of software, collected a lot of carefully hidden traps on my journey, and found multiple ways how to avoid them. In this talk, I want to share with you my experience.

See All Events
Join us!

We're looking for amazing speakers.
CFP is open till 10.01.2023

Fill in Call for Papers
location icon

Location

Centrum Konferencyjne POLIN, Poland
stay in touch icon

Follow Us

Contact Us