Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Using Race Conditions in Correct Concurrent Software

Strange Loop Conference via YouTube

Overview

Explore the counterintuitive benefits of race conditions in concurrent software development through this 39-minute Strange Loop Conference talk. Delve into the world of high-performance systems as Devon O'Dell demonstrates how correctly detecting and leveraging race conditions can improve throughput and reduce latency. Begin with an overview of lock types and non-blocking algorithms before examining a naive test-and-set spinlock to understand how introducing race conditions on reads enhances lock acquisition throughput. Investigate non-blocking algorithms and their incorporation of race event detection to ensure correct, deterministic, and bounded behavior by analyzing a durable, lock-free memory allocator implemented in C using the Concurrency Kit library. Gain insights into developing and debugging high-performance, concurrent network systems software from an experienced software engineer with a background in web applications and embedded systems firmware.

Syllabus

Introduction
The Problem
Slab Allocators
C Implementation
Linearize Ability
Linearization Point
Compare and Swap
The ABA Problem
Latency Plots
Conclusion

Taught by

Strange Loop Conference

Reviews

Start your review of Using Race Conditions in Correct Concurrent Software

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.