Can I use several GPUs for a grid multi screen image? Is it realistic to render a super-high resolution image over an array of 3 by 3 or 5 by 5 (for example) stacked screens? Could I do this by combining several different GPUs, or would the only way be to use a GPU per screen and simply divide the image to be rendered?

Ideally I'd like to be able to use fewer GPUs than screens. Even though one GPU is insufficient I'm hoping I won't need n GPUs for n screens.

If this is possible I'd also need to know whether this requires using the same make and model of GPU or whether unrelated ones could still share processing.
Yes, it's certainly possible to do this kind of thing.  First of all, you can typically connect 3 or 4 displays to each GPU, and (with an appropriate motherboard) you can have up to 4 GPUs per machine.  That would give you 16 screens.  With multiple machines, you could have even more.

Rendering to multiple displays from a single GPU is no big deal.  You can create a single window that stretches across all the displays, render to it, and it should "just work".

Rendering the same scene on multiple GPUs is a bit trickier.  One way is to create a separate rendering context on each GPU, and essentially repeat all the rendering&mdash;re-upload all buffers and textures to each GPU, and re-submit the draw calls to each one every frame.  Another possibility is to use the built-in multi-GPU support in DX12, which allows you to manage several GPUs in one rendering context.