Ok, so thsdepends on a few things.
Here i will assume a PC with a dedicated graphics card.
The vram and ram are separate. The vram is a chip on the graphics card, the ram is on your motherboard.
When you load a texture, it is first loaded into ram, and then passed to the GPU (put in VRAM).
Becuase its not uncommon for the gpu to loose textures, textures are often kept on the ram, so that if the gpu looses it, it can be quickly reloaded onto the GPU.
If you go over the vram size, then a couple things can happen, but usually the memory gets cleared to make more space and the textures have to be loaded onto the gpu again. (There is also some interesting things like ram being used as vram but i'm not too fammiliar with this stuff).
However not all your textures are loaded. GM will only load a texture the first time you use it (or if you orefetch it). It will also unload them if you run out of memory (or if you flush them). This means that you should be ok if you have many large sprites, but only use a couple of them at a time. (Make sure you prefetch and flush and the start /end of a level. You wouldnt want to freeze the game because you are loading the psrite for your super conbo animation).
As for IGPUs on lowend machines and consoles? Well here the ram is shared. So textures are all in ram and nothing needs to be copied. This can actually lead to better performance if you have a lot of textures that would not fit in vram, mainly due to there being no transfer of texture data between ram and vram. But vram is optimized for textures and ram for general computing which is why higher end GPUs just go with more VRAM. Its faster, but coste more.