18–20 Sept 2024
Europe/Vienna timezone

Waste-Free Per-CPU Userspace Memory Allocation

20 Sept 2024, 10:00
45m
"Hall L2/L3" (Austria Center)

"Hall L2/L3"

Austria Center

300
LPC Refereed Track LPC Refereed Track

Speaker

Mathieu Desnoyers (EfficiOS Inc.)

Description

Introduce the librseq per-CPU user-space memory allocator. It implements concepts similar to the Linux kernel percpu allocator in userspace, and thus reduces waste of per-CPU data structures hot cache lines by eliminating padding usually required to eliminate false-sharing, and in addition tackles issues that arise from resident memory waste when restricting processes with scheduler affinity or cpusets.

It allows prototyping kernel algorithms within the safe limits of user-space.

Discuss open issues about interaction between use of shared and private file mappings within a process and the need to keep the shared mappings from being shared with children processes across fork.

Primary author

Mathieu Desnoyers (EfficiOS Inc.)

Presentation materials