YoVDO

SKQ - Event Scheduling for Optimizing Tail Latency in a Traditional OS Kernel

Offered By: USENIX via YouTube

Tags

USENIX Annual Technical Conference Courses Scalable Architectures Courses Event-Driven Programming Courses Performance Improvement Courses Load Balancing Courses

Course Description

Overview

Explore a conference talk from USENIX ATC '21 that introduces Schedulable Kqueue (SKQ), a novel design for FreeBSD Kqueue aimed at improving application tail latency and low-latency throughput. Delve into the scalable architecture and event scheduling of SKQ, examining multiple scheduling policies that enhance cache locality and reduce workload imbalance. Learn how SKQ enables applications to prioritize processing latency-sensitive requests over regular ones. Discover the impressive performance improvements achieved by SKQ in the RocksDB benchmark, including a 1022× reduction in tail latency and a 27.4× extension of low-latency throughput. Compare SKQ's performance to a state-of-the-art kernel-bypass networking system, understanding how it narrows the gap by 83.7% for imbalanced workloads. Gain insights into event-driven programming models, SKQ usage, and various scheduling policies, including cache locality, CPU affinity, and load balancing strategies. Conclude with guidelines for policy selection and a comprehensive understanding of SKQ's impact on optimizing tail latency in traditional OS kernels.

Syllabus

Intro
SKQ: Event Scheduling for Optimizing Tail Latency in a Traditional OS Kernel
The Latency Problem
Sources of Latency
Event-Driven Programming Models
SKQ Usage
SKQ Architecture
Scalability Showdown: SKQ vs. Kqueue
Performance Improvement: SKQ vs. Kqueue
Scheduling Policies
Challenges of Efficient Event Scheduling
Cache Locality Policies in Memcached
CPU Affinity vs. Queue Affinity
Imbalanced Workload: RocksDB
Load Balancing Policies
Hybrid Policies
SKQ vs. Kernel Bypass: Uniform 10 ps Workload
SKQ vs. Kernel Bypass: Zipf-like Workload
Policy Selection Guidelines
Conclusion


Taught by

USENIX

Related Courses

Architectures sans serveur avec Amazon DynamoDB et Amazon Kinesis Streams avec AWS Lambda (Français) | Serverless Architectures with Amazon DynamoDB and Amazon Kinesis Streams with AWS Lambda (French)
Amazon Web Services via AWS Skill Builder
Architectures sans serveur utilisant les événements Amazon CloudWatch et des événements planifiés avec AWS Lambda (Français) | Serverless Architectures using Amazon CloudWatch Events and Scheduled Events with AWS Lambda (French)
Amazon Web Services via AWS Skill Builder
Architetture serverless con Amazon DynamoDB e Amazon Kinesis Streams con AWS Lambda (Italiano) | Serverless Architectures with Amazon DynamoDB and Amazon Kinesis Streams with AWS Lambda (Italian)
Amazon Web Services via AWS Skill Builder
Architetture serverless utilizzando Amazon CloudWatch Events e gli eventi pianificati con AWS Lambda (Italiano) | Serverless Architectures using Amazon CloudWatch Events and Scheduled Events with AWS Lambda (Italian)
Amazon Web Services via AWS Skill Builder
Arquitecturas sin servidor con Amazon DynamoDB y Amazon Kinesis Streams con AWS Lambda (Español LATAM) | Serverless Architectures with Amazon DynamoDB and Amazon Kinesis Streams with AWS Lambda (LATAM Spanish)
Amazon Web Services via AWS Skill Builder