Unfortunately it do not support NVIDIA GPUs, so it is not very helpful for now. Rust is not a problem. Mesa NVK driver use Rust and it works on Haiku.
If it would get command buffer execution and memory management support, there is a chance to run Mesa driver on top of it.
After I posted this, I noticed that ROCm is AMD-specific, Intel graphics cards use something called oneAPI and Apple Silicon has Metal. Now I’m looking at reference implementations of general shader compilation. Dawn, part of Chromium’s WebGPU support, seems to be the only useful thing I’ve found so far. They all seem to be based on LLVM though.
There is already some command ring buffer support in the intel_extreme driver (used for overlays and some 2D acceleration things), is it the same thing? (it may not work on all modern devices, as usual Intel probably moved some registers around).
For memory management, the VRAM can simply be mapped into the address space, what else is needed? Is there existing code for an allocator we can reuse?
Central VRAM allocation management is needed. So clients may refer VRAM allocations by some ID or FD. Also note that not whole VRAM can be mapped to CPU address space (unless large BAR is enabled). Some part of VRAM can be accessed only by command buffer execution.
The same with ring buffer: central command buffer queue is needed.
it really work for intel?
Though I don’t have any experience in OS level driver development, I am interested in graphics and GPUs. So what I wanted to ask was would it be a really complex task to handle, if not where can I get started on this project
Just pick an existing ported application and/or 3D game for testing. Then, make sure your audio and video drivers are working well when using Haiku. This is very important when reviewing legacy 2D/3D software. You may want to let the mentors know your hardware setup so they can support you in getting things up to speed…
.
Is this list ‘AI’ generated?
Yes with help of Gemini
Okay.
Please refrain from posting LLM generated output in the future, it is not allowed on this forum.