The number of textures and the size of textures you use in a project will affect how much VRAM/GPU memory you will use when rendering on GPU. Even with a handful of 512 and 1024 textures, I consistently fill up my 2GB of VRAM when trying to render, and thus have to use CPU for rendering.
Also be aware that multiple video cards do not stack VRAM. I.e., 2x4GB GPUS doesn’t make 8GB of memory available for rendering, it’s still only 4GB.
Sending the job to a render farm allows the farm to decide on the best approach and distribute the load accordingly.