SlideShare ist ein Scribd-Unternehmen logo
1 von 12
Downloaden Sie, um offline zu lesen
Status Update of the VKMS DRM
driver
Maíra Canal and Melissa Wen
A Coruña, XDC 2023
Virtual Kernel Mode Setting
VKMS is a software-only model of a KMS driver
● useful for testing and for running X (or similar) on headless machines;
● aims to enable a virtual display with no need of a hardware display capability;
DRM community project. GPU-vendor agnostic.
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Performance Improvement
Performance has been a historical problem for VKMS
We were able to improve the performance (~30%)
● All planes are blended at once.
● The blend calculus is done as per line instead of per pixel.
Memory consumption also improved: from width * height to 2 * width
● We don't need the whole image at once.
No more IGT timeouts :)
Thanks Igor Torrente and Pekka Paalanen!
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
The composition was executed on top of the primary plane.
● The primary plane needed to be enabled, visible and have the same size and
position as the CRTC.
Now, the composition is performed on top of a black background with the size of
the CRTC.
● The primary plane doesn't have to be visible, or even enabled.
● It can be positioned.
Full alpha-blending on all planes.
More IGT tests are passing!
Composition
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Support for multiple overlay planes when enable_overlay=1
● Thanks José Exposito!
VKMS used to support only ARGB8888 and XRGB8888.
● Format support was really attached to blending.
Now, VKMS has support for ARGB8888, XRGB8888, ARGB16161616, XRGB16161616,
and RGB565.
● Thanks Igor Torrente!
New features
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Support for plane rotation
● rotate-0, rotate-90, rotate-180, rotate-270, reflect-x and reflect-y.
Support a 1D gamma LUT with interpolation for each color channel.
● Thanks Arthur Grillo!
More IGT tests are passing!
New features
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Synchronization issues
● Deadlock between dev->event_lock and timer
● Race-condition between flushing and destroying
● Race-condition between the hrtimer and the atomic commit
Implement blend mode properties
Enable Virtual Hardware support
Support for multi-planar formats (e.g. NV12)
● Thanks Arthur Grillo!
Ongoing
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Support for multiple CRTCs
● Thanks Marius Vlad, Brandon Pollack and Jim Shargo!
Planes / CRTCs / Connectors setup via ConfigFS
● Thanks Brandon Pollack and Jim Shargo!
Addition of VKMS to the DRM CI pipeline
● Thanks Helen Koike!
Extending the color management support
● Thanks Harry Wentland!
Incoming work
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
https://dri.freedesktop.org/docs/drm/gpu/vkms.html#todo
Unit tests for the composition procedure
Fix failing tests on IGT detected by the DRM CI
TO-DO
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Testing Requirements for Userspace API
Anything that constitutes an API change should have driver-agnostic test cases
in IGT for that feature.
What if support on VKMS became a requirement for new KMS/generic APIs?
VKMS DRM/KMS API
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Getting started: https://docs.kernel.org/gpu/vkms.html
We need more reviewers!
Increase coverage of IGT tests
Do you want to contribute?
Status Update of the VKMS DRM driver
Maíra Canal and Melissa Wen, XDC 2023
Status Update of the VKMS DRM driver – XDC 2023

Weitere ähnliche Inhalte

Ähnlich wie Status Update of the VKMS DRM driver – XDC 2023

Nokia 3GPP Industry e-Workshop on XR Sept 2020
Nokia 3GPP Industry e-Workshop on XR Sept 2020Nokia 3GPP Industry e-Workshop on XR Sept 2020
Nokia 3GPP Industry e-Workshop on XR Sept 2020Eiko Seidel
 
Elephant & mice flows
Elephant & mice flowsElephant & mice flows
Elephant & mice flowsJeff Green
 
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.MX – универсальная сервисная платформа. Вчера, сегодня, завтра.
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.SkillFactory
 
Virtual Reality in 5G Networks
Virtual Reality in 5G NetworksVirtual Reality in 5G Networks
Virtual Reality in 5G NetworksGwendal Simon
 
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL chaitanya ivvala
 
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon..."Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...Edge AI and Vision Alliance
 
Evolution of deployment tooling @ Chronosphere - CraftConf 2023
Evolution of deployment tooling @ Chronosphere - CraftConf 2023Evolution of deployment tooling @ Chronosphere - CraftConf 2023
Evolution of deployment tooling @ Chronosphere - CraftConf 2023Mary Fesenko
 
toyota-Challenges towards New Software Platform for Automated Driving.pdf
toyota-Challenges towards New Software Platform for Automated Driving.pdftoyota-Challenges towards New Software Platform for Automated Driving.pdf
toyota-Challenges towards New Software Platform for Automated Driving.pdfxmumiao
 
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...Nguyễn Hoàng (LightJSC)
 
Testing Network Routers for Extreme Scale and Performance
Testing Network Routers for Extreme Scale and Performance Testing Network Routers for Extreme Scale and Performance
Testing Network Routers for Extreme Scale and Performance Sailaja Tennati
 
Ground-Cloud-Cloud-Ground - NAB 2022 IP Showcase
Ground-Cloud-Cloud-Ground - NAB 2022 IP ShowcaseGround-Cloud-Cloud-Ground - NAB 2022 IP Showcase
Ground-Cloud-Cloud-Ground - NAB 2022 IP ShowcaseKieran Kunhya
 
A Distributed Delivery Architecture for User Generated Content Live Streaming...
A Distributed Delivery Architecture for User Generated Content Live Streaming...A Distributed Delivery Architecture for User Generated Content Live Streaming...
A Distributed Delivery Architecture for User Generated Content Live Streaming...Alpen-Adria-Universität
 
Trends in Visualization for Armoured Vehicles
Trends in Visualization for Armoured VehiclesTrends in Visualization for Armoured Vehicles
Trends in Visualization for Armoured Vehiclesjder
 
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLC
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLCCarDAQ Plus Manual from Clark Heintz Tools & Equipment LLC
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLCClark Heintz
 
High-Definition Rugged DVR - Case Study
High-Definition Rugged DVR - Case StudyHigh-Definition Rugged DVR - Case Study
High-Definition Rugged DVR - Case StudyMistral Solutions
 
CA Spectrum® Just Keeps Getting Better and Better
CA Spectrum® Just Keeps Getting Better and BetterCA Spectrum® Just Keeps Getting Better and Better
CA Spectrum® Just Keeps Getting Better and BetterCA Technologies
 
2020 MCS Industrial AI-edge-computer
2020 MCS Industrial AI-edge-computer2020 MCS Industrial AI-edge-computer
2020 MCS Industrial AI-edge-computerGrace Yang
 

Ähnlich wie Status Update of the VKMS DRM driver – XDC 2023 (20)

Nokia 3GPP Industry e-Workshop on XR Sept 2020
Nokia 3GPP Industry e-Workshop on XR Sept 2020Nokia 3GPP Industry e-Workshop on XR Sept 2020
Nokia 3GPP Industry e-Workshop on XR Sept 2020
 
Elephant & mice flows
Elephant & mice flowsElephant & mice flows
Elephant & mice flows
 
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.MX – универсальная сервисная платформа. Вчера, сегодня, завтра.
MX – универсальная сервисная платформа. Вчера, сегодня, завтра.
 
Virtual Reality in 5G Networks
Virtual Reality in 5G NetworksVirtual Reality in 5G Networks
Virtual Reality in 5G Networks
 
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
 
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon..."Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...
"Combining Cloud and Edge Machine Learning to Deliver the Future of Video Mon...
 
Evolution of deployment tooling @ Chronosphere - CraftConf 2023
Evolution of deployment tooling @ Chronosphere - CraftConf 2023Evolution of deployment tooling @ Chronosphere - CraftConf 2023
Evolution of deployment tooling @ Chronosphere - CraftConf 2023
 
toyota-Challenges towards New Software Platform for Automated Driving.pdf
toyota-Challenges towards New Software Platform for Automated Driving.pdftoyota-Challenges towards New Software Platform for Automated Driving.pdf
toyota-Challenges towards New Software Platform for Automated Driving.pdf
 
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...
Promise - Rich media storage solution- Thunderbolt3 storage solution - Pegasu...
 
Testing Network Routers for Extreme Scale and Performance
Testing Network Routers for Extreme Scale and Performance Testing Network Routers for Extreme Scale and Performance
Testing Network Routers for Extreme Scale and Performance
 
Ground-Cloud-Cloud-Ground - NAB 2022 IP Showcase
Ground-Cloud-Cloud-Ground - NAB 2022 IP ShowcaseGround-Cloud-Cloud-Ground - NAB 2022 IP Showcase
Ground-Cloud-Cloud-Ground - NAB 2022 IP Showcase
 
H.264 MDVRs
H.264 MDVRsH.264 MDVRs
H.264 MDVRs
 
A Distributed Delivery Architecture for User Generated Content Live Streaming...
A Distributed Delivery Architecture for User Generated Content Live Streaming...A Distributed Delivery Architecture for User Generated Content Live Streaming...
A Distributed Delivery Architecture for User Generated Content Live Streaming...
 
Trends in Visualization for Armoured Vehicles
Trends in Visualization for Armoured VehiclesTrends in Visualization for Armoured Vehicles
Trends in Visualization for Armoured Vehicles
 
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLC
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLCCarDAQ Plus Manual from Clark Heintz Tools & Equipment LLC
CarDAQ Plus Manual from Clark Heintz Tools & Equipment LLC
 
High-Definition Rugged DVR - Case Study
High-Definition Rugged DVR - Case StudyHigh-Definition Rugged DVR - Case Study
High-Definition Rugged DVR - Case Study
 
CA Spectrum® Just Keeps Getting Better and Better
CA Spectrum® Just Keeps Getting Better and BetterCA Spectrum® Just Keeps Getting Better and Better
CA Spectrum® Just Keeps Getting Better and Better
 
GMSL in Linux
GMSL in LinuxGMSL in Linux
GMSL in Linux
 
2020 MCS Industrial AI-edge-computer
2020 MCS Industrial AI-edge-computer2020 MCS Industrial AI-edge-computer
2020 MCS Industrial AI-edge-computer
 
produse Evertz
produse Evertzproduse Evertz
produse Evertz
 

Mehr von Igalia

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEIgalia
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesIgalia
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceIgalia
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfIgalia
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JITIgalia
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!Igalia
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerIgalia
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in MesaIgalia
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIgalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera LinuxIgalia
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVMIgalia
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsIgalia
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesIgalia
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSIgalia
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webIgalia
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersIgalia
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...Igalia
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on RaspberryIgalia
 

Mehr von Igalia (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPE
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded Devices
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to Maintenance
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdf
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JIT
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamer
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera Linux
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVM
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devices
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the web
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shaders
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on Raspberry
 

Kürzlich hochgeladen

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Kürzlich hochgeladen (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Status Update of the VKMS DRM driver – XDC 2023

  • 1. Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen A Coruña, XDC 2023
  • 2. Virtual Kernel Mode Setting VKMS is a software-only model of a KMS driver ● useful for testing and for running X (or similar) on headless machines; ● aims to enable a virtual display with no need of a hardware display capability; DRM community project. GPU-vendor agnostic. Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 3. Performance Improvement Performance has been a historical problem for VKMS We were able to improve the performance (~30%) ● All planes are blended at once. ● The blend calculus is done as per line instead of per pixel. Memory consumption also improved: from width * height to 2 * width ● We don't need the whole image at once. No more IGT timeouts :) Thanks Igor Torrente and Pekka Paalanen! Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 4. The composition was executed on top of the primary plane. ● The primary plane needed to be enabled, visible and have the same size and position as the CRTC. Now, the composition is performed on top of a black background with the size of the CRTC. ● The primary plane doesn't have to be visible, or even enabled. ● It can be positioned. Full alpha-blending on all planes. More IGT tests are passing! Composition Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 5. Support for multiple overlay planes when enable_overlay=1 ● Thanks José Exposito! VKMS used to support only ARGB8888 and XRGB8888. ● Format support was really attached to blending. Now, VKMS has support for ARGB8888, XRGB8888, ARGB16161616, XRGB16161616, and RGB565. ● Thanks Igor Torrente! New features Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 6. Support for plane rotation ● rotate-0, rotate-90, rotate-180, rotate-270, reflect-x and reflect-y. Support a 1D gamma LUT with interpolation for each color channel. ● Thanks Arthur Grillo! More IGT tests are passing! New features Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 7. Synchronization issues ● Deadlock between dev->event_lock and timer ● Race-condition between flushing and destroying ● Race-condition between the hrtimer and the atomic commit Implement blend mode properties Enable Virtual Hardware support Support for multi-planar formats (e.g. NV12) ● Thanks Arthur Grillo! Ongoing Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 8. Support for multiple CRTCs ● Thanks Marius Vlad, Brandon Pollack and Jim Shargo! Planes / CRTCs / Connectors setup via ConfigFS ● Thanks Brandon Pollack and Jim Shargo! Addition of VKMS to the DRM CI pipeline ● Thanks Helen Koike! Extending the color management support ● Thanks Harry Wentland! Incoming work Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 9. https://dri.freedesktop.org/docs/drm/gpu/vkms.html#todo Unit tests for the composition procedure Fix failing tests on IGT detected by the DRM CI TO-DO Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 10. Testing Requirements for Userspace API Anything that constitutes an API change should have driver-agnostic test cases in IGT for that feature. What if support on VKMS became a requirement for new KMS/generic APIs? VKMS DRM/KMS API Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023
  • 11. Getting started: https://docs.kernel.org/gpu/vkms.html We need more reviewers! Increase coverage of IGT tests Do you want to contribute? Status Update of the VKMS DRM driver Maíra Canal and Melissa Wen, XDC 2023