I’m on Arch (btw.) and I have a Intel i5-14600K CPU with a iGPU (UHD Graphics 770) (GPU 1) in it and a dGPU from Nvidia, the RTX 3060 (GPU 0). I have one monitor connected to the 3060 via display port 1.4.
I can see both GPUs in GNOME Mission Center, but hte iGPU has always Clock Speed 0 and Utilization 0. So anything which is done on the GPU is done on the 3060.
I want to seperate what is done on the iGPU and what is done on the 3060:
dGPU (RTX 3060):
- Video editing
- video transcoding
- AI stuff (ollama)
- Machine learning
- Blender
- Steam games
iGPU (intel):
- Firefox (especially YouTube video decoding, it has hw acceleration for that)
- Chrome
- Libre Office
- GNOME
- etc.
I wonder if this or at least parts of it is possible. I need the whole 12 GB VRAM on the 3060 for ollama, and the iGPU is just sitting there doing nothing. Is there a way to distribute the work? Do I need two screens for that or something?
It might also be that I’m misunderstanding how the whole thing works or over estimating Linuxes capabilities.
I’ve never owned a laptop with a GPU, very interesting how that works.
Is it something works out of the box, or do you have to manually set it up?
@Pogogunner At least on Debian based distros, it’s all part of the driver installation.
As for how it works at the hardware/kernel level the iGPU take some of system RAM to use as VRAM, so all the kernel has to do is give the dGPU a DMA buffer into that. The final piece is for the iGPU driver to send a synchronisation signal to the dGPU when it’s ready to receive the (partial-)frame.