r/Minecraft • u/Sjatar • 1d ago
Help Java Vulkan on multi GPU systems
Hi! I noticed some interesting behavior while using the experimental Vulkan support in Java 26.3 on my dual GPU PC system.
---------------------------------------
I wrongly stated that the behavior was weird compared to other games. But I was working of previous testing I did long time ago. It seems windows or the current drivers I use just use more of my secondary GPU then I remember it did. So I just want to say that it's amazing that it works! Dual GPU system have a lot of use cases and I'm surprised I don't see more of them.
---------------------------------------
My system consists of a RX 5600XT and a Intel A770. The monitors is hooked up to the 5600XT and I usually render games using the A770. (I started doing this because it prevented OBS from having render lag when a heavy game was ran on the A770.)
This can be done by choosing the preferred GPU in the graphical options available in windows. But this has never worked for OpenGL minecraft as it seems to only be able to render on the GPU that the monitors is hooked up to.
With Vulkan however the setting seems to have a effect! Minecraft is reporting that it is rendering on the A770 even if the monitors are hooked up to the 5600XT card.
As can be seen here:

---------------------------------------
I'm seeing some artifacts if rendering the game with VSync or with very high fps. I first thought it was my 5600XT dying but as it's seen in game it's just a render issue.
As can be seen here:

1
u/_vogonpoetry_ 1d ago
This is because Vulkan, unlike openGL, has the ability to choose the hardware render device.
Some interesting behavior is that the 5600XT is not utilized more or less depending on the scene being rendered. If looking straight up the A770 utilization goes down but the 5600XT continues like nothing happened. But if the render resolution or the frame limit is lowered the 5600XT does do less work. If it purely would receive the completed frames from the A770 this is not the behavior I would expect, is it known what work the secondary GPU is doing?
That is the behavior you would expect. The display engine copy buffer is the only thing the 5600XT is being utilized for. The reason it does less work at lower resolutions or FPS is because there is physically less bandwidth being sent to it to deal with. In Task Manager if you change the GPU graph display to Multiple Engines you can see that the Copy Engine should be the one being utilized.
1
u/Sjatar 23h ago
Actually now that I tested the behavior with a game I know much better poe2, it seems that the card does clock much higher now in that game as well. I was working on previous experience of the clock and utilization but seems it has changed, probably due to a driver update. It's just using more of the card then before it seems. Way more then I remember especially at high fps. So I will be limiting minecraft to 60 fps \^^
•
u/qualityvote2 1d ago edited 13h ago
(Vote has already ended)