<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>libamicontained: a low-level library for reasoning about resource restriction</title>
        <link>https://peertube.watch/videos/watch/47ec5853-2174-48e8-a48a-5b4b8d13851e</link>
        <description>A common question language runtimes have is: how many resources do I have access to? They want to know e.g. how many threads they can run in parallel for their threadpool size, or the number of thread-local memory arenas, etc. The kernel offers many endpoints to query this information. There is /proc/cpuinfo, /proc/stat, sched_getaffinity(), sysinfo(), the cpuset cgroup hierarchy's cpuset.cpus.effective, the isolcpus kernel command line parameter, /sys/devices/system/cpu/online. Further, libcs offer divergent implementations of sysconf(_SC_NPROCESORS_ONLIN). As a bonus, the kernel scheduler may be configured to limit resources using cpu "shares" or cpu quotas, so a task may be able to run on all cores, but have some kind of rate limit that is not reflected in the physical cores the system is allowed to run on. In this talk, we propose a new library "libamicontained" to offer one place to consolidate the logic for the answer to this question. We propose a: C ABI exporting, statically linked, zero dependency, library which is aware of all of these different runtime configurations and answers questions about cpu counts etc. in accordingly reasonable ways. Of course, the real challenge here is adoption. Ideally we can pitch such a library as "from the container people", so it's an easier pitch to language runtimes. We are here seeking feedback on all points (heuristics to reason about CPU counts, design goals, etc.) from container people as a first step. [2]: as of this writing, the jvm still uses cpuset.cpus instead of cpuset.cpus.effective on cgroupv2: https://github.com/openjdk/jdk/blob/7fbfb3b74a283261027e6c293e1a5dbc354cf0af/src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp#L92-L96 [3]: https://github.com/libuv/libuv/issues/2297 , https://github.com/nodejs/node/issues/6252 Speakers: Tycho Andersen, Sebastien Dabdoub, Track: Containers devroom, Room: UB2.252A (Lameere), When: Saturday 3 February 2024, 13:25–13:55 (Brussels time), Schedule: FOSDEM 2024 event page, Slides &amp; links slides, code, Licence: Creative Commons Attribution 2.0 Belgium (CC BY 2.0 BE) (as stated in the FOSDEM video archive). Attribution: “libamicontained: a low-level library for reasoning about resource restriction” by Tycho Andersen, Sebastien Dabdoub, FOSDEM 2024. Original recording: 2024/ub2252a/fosdem-2024-3033-libamicontained-a-low-level-library-for-reasoning-about-resource-restriction.av1.webm from the FOSDEM video archive. This channel is an unofficial mirror; FOSDEM is a free and non-commercial event organised by the community for the community.</description>
        <lastBuildDate>Tue, 20 Oct 2026 22:17:01 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>PeerTube - https://peertube.watch</generator>
        <image>
            <title>libamicontained: a low-level library for reasoning about resource restriction</title>
            <url>https://peertube.watch/lazy-static/avatars/3b284627-b75f-409e-ac2e-10f4c2946f43.png</url>
            <link>https://peertube.watch/videos/watch/47ec5853-2174-48e8-a48a-5b4b8d13851e</link>
        </image>
        <copyright>All rights reserved, unless otherwise specified in the terms specified at https://peertube.watch/about and potential licenses granted by each content's rightholder.</copyright>
        <atom:link href="https://peertube.watch/feeds/video-comments.xml?videoId=47ec5853-2174-48e8-a48a-5b4b8d13851e" rel="self" type="application/rss+xml"/>
    </channel>
</rss>