Question on internals of GPU


I am trying to use GPU for a specific purpose, and I would like to ask following
questions about internals of GPU.

Is there any operating system running on the GPU – or is everything implemented in hardware?
If everything is implemented in hardware how does the device driver interacts with the GPU?


No operating system is running on GPU, and the device driver is interacting with GPU on the same way as any other device driver is interacting with the hardware it is managing: through sending and receiving messages over corresponding bus (PCI bus in this particular case).

nVIDIA’s Ian Buck takes the stance that the ‘Low Level Driver API’ is likened to the GPU’s OS.

Also, might want to watch this video:…layer_embedded#

Dare I ask where he said that? Certainly not on that video link you posted.


1:24 Seconds in, he states 'It’s very similar in ways and spirit, to our Low Level Driver API. Our OS layer".

I take it you don’t agree?

That is not what he means. That’s the level that interfaces with the host OS.

Go further for me…

The host OS is what exactly? Windows?


Thanks… I stand corrected.

When he said ‘Our OS layer’, in speaking in about the low level driver, I didn’t realize he meant Windows…

But he wasn’t talking about the driver, he was talking about the driver API, which is one of the two CUDA programming APIs. Look at the diagram you posted. The operating system and hardware level stuff is the green bits at the bottom, including the driver. The driver API is one of the apricot coloured bits at the top of the diagram. Not the same thing all all.


Hi all
Thanks for your answers.

I have another one:
Is there any storage mechanism, e.g., flash memory available on the GPU?


I don’t believe there is user modifiable flash or EEPROM memory on current cards. I have never heard of BIOS reflashing or anything like that with NVIDIA cards. Whatever firmware there is for a given card is probably pushed onto the device by the driver bundle.

There is some type of micro os on the cards, and you can flash them for sure google nvFlash, not that i think its smart messing with any of that stuff !!! you can end up with an expensive door stop easily. Most people who flash usualy want to modify some default setting.