nvidium icon indicating copy to clipboard operation
nvidium copied to clipboard

AMD getting GL_NV_MESH_SHADER Equivalent Next quarter.

Open IGN-Styly opened this issue 1 year ago • 41 comments
trafficstars

OpenGL issue AMD graphics cards should soon be compatible with this mod, this mod may require minor changes for the AMD implementation. I'd like to hear the Devs opinion on this.

IGN-Styly avatar May 08 '24 19:05 IGN-Styly

I opened an issue in AMD's new driver forum on GitHub and already received a response. They are aiming for the end of the year. Maybe you should comment or react so they see that this matters to us.

https://github.com/GPUOpen-Drivers/AMD-Gfx-Drivers/issues/4

ImBehinYa avatar May 23 '24 20:05 ImBehinYa

An introduction video to Mesh Shaders directly from AMD with the RNDA 3 architecture: https://www.youtube.com/watch?v=MQv76-q2cm8

Eiion avatar Jun 14 '24 20:06 Eiion

Mesh shaders should be supported RDNA 2=<, after digging on my gpu firmware there seems to some mesh shader process.

IGN-Styly avatar Jun 15 '24 14:06 IGN-Styly

From all I know it - at this point - is currently not supported. Sure there may be fractures in the firmware, which is no surprise considering they are working on it, but it is not supported and code should not work. Yet.

Eiion avatar Jun 16 '24 09:06 Eiion

.

Firmware comes default, i havent updated it ever. The only missing piece is the driver and opengl extension, hardware wise its good to go.

IGN-Styly avatar Jun 17 '24 22:06 IGN-Styly

So you've bought a GPU the firmware off which already has fractures of code on it. Just like most firmware versions partially has code of future firmware versions left in it. That's all that is saying. The point is, mesh shaders are currently not working on AMD cards. Yet. Nobody will put the effort into creating/completing firmware and drivers to make it work if AMD won't do it. That's not even an argument to make.

Eiion avatar Jun 18 '24 08:06 Eiion

So you've bought a GPU the firmware off which already has fractures of code on it. Just like most firmware versions partially has code of future firmware versions left in it. That's all that is saying. The point is, mesh shaders are currently not working on AMD cards. Yet. Nobody will put the effort into creating/completing firmware and drivers to make it work if AMD won't do it. That's not even an argument to make.

Umm, you may be interested in what GPUs support VK_EXT_mesh_shader.

Weather-OS avatar Jun 18 '24 10:06 Weather-OS

According to the provided link 6000 series do support Mesh shader, ie can be tested easily with vulcan.

IGN-Styly avatar Jun 18 '24 14:06 IGN-Styly

According to the provided link 6000 series do support Mesh shader, ie can be tested easily with vulcan.

Open GL.

BestOfAfrica avatar Oct 17 '24 20:10 BestOfAfrica

.

same pipeline.

IGN-Styly avatar Oct 18 '24 16:10 IGN-Styly

opengl and vulkan are not the same at all...

Quantum39 avatar Oct 18 '24 18:10 Quantum39

They use the same gpu pipeline though different they are using the same silicon.

IGN-Styly avatar Oct 19 '24 16:10 IGN-Styly

They use the same gpu pipeline though different they are using the same silicon.

Define what a “pipeline” is.

Weather-OS avatar Oct 19 '24 20:10 Weather-OS

You can’t just use Vulkan extensions inside OpenGL applications without some sort of interoperability layer. Even then, it would be excruciatingly difficult to do so.

Weather-OS avatar Oct 19 '24 20:10 Weather-OS

even if they are they same pipeline, vulkan and opengl are two entirely different apis, and as such and not compatible with each other. You simply cannot run vulkan extensions inside an opengl program, or opengl extensions inside vulkan, like @Weather-OS said, without some layer or just completely reprogramming it.

Quantum39 avatar Oct 20 '24 02:10 Quantum39

what is a pipeline? the pipeline is what Opengl or vulkan uses in the GPU to process instructions. It dosen't matter what api its using as long as the silicon and firmware support it.

IGN-Styly avatar Oct 20 '24 20:10 IGN-Styly

the thing that you need to support OpenGL or Vulkan, and doing that is hard. If you want to support OpenGL, you have to do all that work even if you have already done it for Vulkan.

CrabbyDisk avatar Oct 20 '24 20:10 CrabbyDisk

the firmware and silicon supports it, however the api does not, so it will not work. Api must support the feature for it to be used, else you have 2 choices; switch apis and reprogram, or wait until x feature is supported in the api.

Quantum39 avatar Oct 21 '24 00:10 Quantum39

what is a pipeline? the pipeline is what Opengl or vulkan uses in the GPU to process instructions. It dosen't matter what api its using as long as the silicon and firmware support it.

That is wildly misleading. A graphics API is made to abstract an interface between software and user-space graphics drivers. What you’re basically saying is that we should completely ignore all of that and call internal functions from user-space libraries by hand and somehow create a working solution. This is like resorting to kernel functions for printing “Hello, World!” on a terminal. Not to mention nearly impossible to do because there are no header files so you’d need to use a foreign function interface.

Weather-OS avatar Oct 21 '24 13:10 Weather-OS

It dosen't matter what api its using as long as the silicon and firmware support it.

it is quite an oversimplification but the point is that what Vulkan is using for mesh shaders is likely the same or similar being used by OpenGL.

IGN-Styly avatar Oct 26 '24 10:10 IGN-Styly

Good Morning @MCRcortex , could you lock the the issue? until anything relevant comes.

IGN-Styly avatar Oct 26 '24 10:10 IGN-Styly

It dosen't matter what api its using as long as the silicon and firmware support it.

it is quite an oversimplification but the point is that what Vulkan is using for mesh shaders is likely the same or similar being used by OpenGL.

It's not an oversimplification, it's simply wrong. Yes, the way that the GPU's hardware does things will be the same, but in order to make the GPU do it you need to go through some interface, which is what OpenGL and Vulkan are. But you can't mix and match, you need to use only one of them, and in this case Minecraft uses OpenGL so nvidium needs to go through that interface, but there currently is no way to do it for AMD. Once they'll have implemented it, then yeah probably. In general, if you don't know what you're talking about, please don't just keep making things up. (And you clearly don't, otherwise you wouldn't be saying "likely")

Philanche avatar Oct 26 '24 10:10 Philanche

This is like saying a mod made for fabric automatically works on forge because they both use Minecraft

Samalando avatar Oct 26 '24 10:10 Samalando

@Samalando, thats a different topic and its not impossible(its a question of effort).

IGN-Styly avatar Oct 26 '24 17:10 IGN-Styly

@Philanche i agree with you, i did make a mistake trying to explain it in simple terms. But correct me if I am wrong. There's the GPU there the API you use to communicate with it(Vulkan or Opengl) which both use the same silicon.

IGN-Styly avatar Oct 26 '24 17:10 IGN-Styly

@Samalando, thats a different topic and its not impossible(its a question of effort).

You just said it, it's a question of effort. Would you have the time and skill to rewrite the entire minecraft renderer with a completely different graphics API just to add mesh shader support to AMD gpus.

CrabbyDisk avatar Oct 26 '24 17:10 CrabbyDisk

@Philanche i agree with you, i did make a mistake trying to explain it in simple terms. But correct me if I am wrong. There's the GPU there the API you use to communicate with it(Vulkan or Opengl) which both use the same silicon.

Your problem here is that you’re abstracting way too much detail here. It’s like me saying “there are CPU architectures like x86 or ARM which they both use electricity”. Graphics APIs don’t directly communicate with the die of a GPU. They go through many abstraction layers to reach that point and that’s the thing you’re missing.

Weather-OS avatar Oct 26 '24 20:10 Weather-OS

https://github.com/GPUOpen-Drivers/AMD-Gfx-Drivers/issues/4

It's nearly time! Once this gets pushed out to stable, I would love to see AMD support here.

ETA: updates as of 20 hours ago suggest upstream support for OpenGL mesh shaders on RDNA2 or greater

ryleu avatar Nov 04 '24 18:11 ryleu

ETA: updates as of 20 hours ago suggest upstream support for OpenGL mesh shaders on RDNA2 or greater

if u scroll up the 5th of june the same thing was said but yes RX 6000 will most likely have the support in their drivers

KarmaMarazu avatar Nov 04 '24 19:11 KarmaMarazu

https://github.com/GPUOpen-Drivers/AMD-Gfx-Drivers/issues/4#issuecomment-2487628048

Looks like it's a direct implementation of the GL_NV_mesh_shader extension so it might even just work out of the box without needing any new bindings.

FalsePattern avatar Nov 20 '24 07:11 FalsePattern