Size of vram used for storing textures surely depends on the size of "looking window"?
Texture data is stored for displaying, what else use of it can there be?
I really need to find "How gpu uses memory"-101 article somewhere to understand this.
I never studied this subject deeply.
But, in the 90s' when "accelerated" graphics cards were introduced, I remember that the "acceleration" was about what gpu can do _in addition_ of just being a frame buffer. And there were things in both 2d and 3d acceleration.
I have always thought that "predicting" is one the most important thing in 3d graphics. Ie. the engine keeps the polygons that are most likely to be used in the near future in the memory, so it doesn't have to compute them again and again.
What was the reason why 2d/3d design apps need workstation grade gpu's? Surely not about framebuffering?
Sure, textures will take up space regardless, but on traditional systems without unified memory, the CPU has to read textures into RAM, then have the GPU copy those textures to VRAM. Textures end up taking space both in RAM and VRAM. This also applies to integrated graphics that don't treat system RAM as unified memory.
An accelerated graphics card simply just speeds up calculations. Since 3D calculations were costly on the CPU, having a dedicated GPU to speed up these calculations was all the rage back then. It doesn't have anything to do with VRAM.
As for why workstation-grade GPUs need so much VRAM, it's due to textures and materials. You can't guarantee textures will be optimized like they are in games, so they will inevitably take up a lot more space. Also it's not like an engineer or 3D artist will spend time to optimize the textures themselves, so it's best to just throw as much VRAM into the system as possible so it doesn't matter if someone is trying to use a 16K texture in any 3D model, it won't overload VRAM.
Note again the limitation discussed above: without unified memory, you need to mirror textures between VRAM and system RAM, which ends up wasting a lot of RAM and VRAM. This is much less of a problem for unified memory. These new MacBooks can be considered as having at least 2/3 of total RAM as VRAM, and there is no need to make copies of textures, so the new MacBooks in workloads like those are not required to have that much RAM overall.
Say, if your 3D scene has 10GB of textures, that means on a traditional system without unified memory, you need approximately 10GB system RAM and a bit more than 10GB VRAM to handle that scene. On the new MacBooks, you just need 10GB RAM to handle the same scene.
As for "predicting", I think you thought wrong. It's foolish to try and "predict" user's next move within a few millisecond. You're just wasting power. There is no "prediction" here. The system will simply just use a framebuffer to display the current screen, and that framebuffer will just take up as much as whatever the resolution of the screen is. I.e.: it's not going to use much RAM.
I hope you realize there are GPUs on the market currently with 2GB of VRAM that can drive up to 3x 4K60 monitors while still having enough VRAM for textures and other things.