Chaos Computer Club - archive feed

Chaos Computer Club - archive feed

By CCC media teamTechnology
Download on the App Store

Chaos Computer Club - archive feed episodes

  • Addressing wayland robustness (xdc2021)
    One of the biggest user-facing issues facing wayland adoption is robustness. A crash in the compositor can take down the entire session and lead to data loss.
    With wayland being a constantly changing landscape and with more workload being put on the compositor process this doesn't seem to be going away.
    This talk showcases work across multiple libraries and toolkits to tackle this at the root with a method of "compositor handoffs" allowing clients to safely securely and seamlessly reconnect to a relaunched wayland compositor. This not only tackles the issue of robustness but also opens up a whole avenue of new opportunities that were previously impossible; such as freezing and resuming applications.
    We talk through the POC implementations made across multiple toolkits, and what changes are needed throughout wayland and mesa to support this.
    about this event: https://c3voc.de
    33 min
  • Bike Charger (petitfoo)
    Ich mache gerne Fahrradtouren und navigiere dabei mit meinem Handy auf Openstreetmapkarten. Allerdings verbraucht das Navigieren ziemlich viel Strom, sodass der Akku den Tag nur knapp durchhält. Daher habe ich überlegt, mein Handy über den Nabendynamo an meinem Fahrrad zu laden. Das Ergebnis stelle ich in diesem Petit Foo vor.
    about this event: https://www.chaospott.de
    34 min
  • Lightning Talks I (xdc2021)
    Lightning talks for the first day of the conference:
    - LibVF.IO & Hyperborea - new tech for VFIO graphics passthrough users
    - Another year, another ISA: Panfrost update
    - The Input Method Hub
    - Quick Overview of VK_EXT_multi_draw
    - SDL: The Quest for Wayland By Default
    about this event: https://c3voc.de
    36 min
  • Emulating Virtual Hardware in VKMS (xdc2021)
    The Virtual Kernel Mode-setting(VKMS) driver aims to help with testing and development of graphics drivers without having to use actual graphics hardware. My work during Outreachy comprised adding support for emulation of virtual hardware in VKMS. This involved writing/refactoring code in IGT GPU tests as well. I want to talk about my journey as a newcomer in exploring DRM and IGT GPU tools, debugging mysterious errors, and working with the community to develop a solution.
    about this event: https://c3voc.de
    13 min
  • Fast Checkpoint Restore for AMD GPUs with CRIU (xdc2021)
    CRIU a.k.a Checkpoint Restore in Userspace is the de-facto choice for Checkpoint and Restore but one of its major limitations is to Checkpoint and Restore tasks that have a device state associated with them and need the driver to manage their state which CRIU cannot control but provides a flexible plugin mechanism to achieve this. So far there is no serious real device plugin (at least in public domain) that deals with a complex device such as a GPU. We would like to discuss our work to support CRIU with AMD ROCm which is AMD's fully open source solution to Machine Learning and HPC compute space. This will potentially be extended to support video decode / encode using render nodes.
    CRIU already has a plugin architecture to support processes using device files. Using this architecture we added a plugin for supporting CRIU with GPU compute applications running on the AMD ROCm software stack. This requires new ioctls in the KFD kernel mode driver to save and restore hardware and kernel mode driver state, such as memory mappings, VRAM contents, user mode queues, and signals. We also needed a few new plugin hooks in CRIU itself to support remapping of device files and mmap offsets within them, and finalizing GPU virtual memory mappings and resuming execution of the GPU after all VMAs have been restored by the PIE code.
    The result is the first real-world plugin and the first example of GPU support in CRIU.
    While there were several new challenges that we faced to enable this work, we were finally able to support real tensorflow/pytorch work loads across multi-gpu nodes using criu and were also able to migrate the containers running gpu bound worklaods.In this talk, we'd like to talk about our journey where we started with a small 64KB buffer object in GPU VRAM to Gigabytes of single VRAM buffer objects across GPUs. We started with /PROC/PID/MEM interface initially and then switched to a faster direct approach that only worked with large PCIE BAR GPUs but that was still slow. For instance, to copy 16GB of VRAM, it used to take ~15 mins with the direct approach on large bars and more than 45 mins with small bars. We then switched to using system DMA engines built into most AMD GPus and this resulted in very significant improvements. We can checkpoint the same amount of data within 5 seconds now. For this we initially modified libdrm but the maintainers didn't agree to change an private API to expose GEM handles to the userspace so we finally ended up make a kernel change and exporting the buffer objects in VRAM as DMABUF objects and then import in our plugin using libdrm.
    We are going to present the architecture of our plugin, how it interacts with CRIU and our GPU driver during the checkpoint and restore flow. We can also talk about some security considerations and initial test results and performance stats.
    Further reading: https://github.com/RadeonOpenCompute/criu/tree/criu-dev/plugins/amdgpu#readme
    Our work-in-progress code: https://github.com/RadeonOpenCompute/criu/tree/amd-criu-dev-staging
    about this event: https://c3voc.de
    34 min
  • SSA-based Register Allocation for GPU Architectures (xdc2021)
    SSA-based register allocation is a new strategy for register allocation which decouples register allocation from spilling and guarantees predictable register usage. It holds special promise for GPUs due to common architectural features like dynamic register sharing, but there are also challenges in real-world implementations. After first being used in Mesa by the ACO compiler backend for AMD GPUs, it is now also in use by the Freedreno driver for Qualcomm Adreno GPUs. In this talk we will explain the basic concepts, considerations for real-world implementations, and implementation choices made in freedreno and ACO.
    about this event: https://c3voc.de
    37 min
  • ChromeOS + freedreno update (xdc2021)
    Now that we are shipping arm chromebooks with upstream mesa graphics drivers, we would like to give a status update, covering the work to get to this point, and what lies ahead.
    about this event: https://c3voc.de
    34 min
  • The Occult and the Apple GPU (xdc2021)
    The Internet has been under a spell over the M1 system-on-chip. Is Apple's GPU architecture magically faster than the rest of the industry? Or is it all smoke and mirrors? Only a reverse-engineering witch can divine that truth. Grab your cape, because we're about to spill the chip's secrets, solve mysteries we were never supposed to know about, and gain a Mesa driver along the way.
    about this event: https://c3voc.de
    39 min
  • Lima driver status update 2021 (xdc2021)
    Lima is an open source graphics driver which supports Mali Utgard (Mali-4xx) embedded GPUs from ARM.
    It’s a reverse-engineered, community-developed driver.
    At XDC 2019 there was a presentation about Lima, which happened not long after its initial inclusion in upstream.
    At that time, it was still missing some important features to be a complete driver.
    Most of those have been addressed since then and the situation now is notably more stable.
    This talk aims to provide a status update on Lima, a review of the more relevant recent work on it, and some possible paths going forward.
    about this event: https://c3voc.de
    42 min

About Chaos Computer Club - archive feed

From the publisher's feed

Der Chaos Computer Club ist die größte europäische Hackervereinigung, und seit über 25 Jahren Vermittler im Spannungsfeld technischer und sozialer Entwicklungen.