YoVDO

Using Race Conditions in Correct Concurrent Software

Offered By: Strange Loop Conference via YouTube

Tags

Strange Loop Conference Courses C Programming Courses Software Engineering Courses Concurrency Courses Race Conditions Courses

Course Description

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

Tags

Related Courses

Sniffing the Metaverse
Strange Loop Conference via YouTube
KalDB - A Cloud Native Log Search Platform
Strange Loop Conference via YouTube
The Evolution of a Planetary-scale Distributed Database
Strange Loop Conference via YouTube
Machine Learning for Developer Productivity
Strange Loop Conference via YouTube
Formally Verifying Everybody's Cryptography
Strange Loop Conference via YouTube