Consecutive frames in AFR, stripes in SFR, rectangles in checkerboard. In action, consecutive frames will not differ by much in content. In fact, they will have almost the exact same datasets.which of the two? different frames or different parts of a frame?
Maybe I'm judging based on my lack of graphics knowledge, but in the first case I don't see any data dependencies. Each frame comes with its own dataset and whatever other specifications and it should be possible to render each separately, wthout the entire set of resources. If additional information is needed (border issues, as in previous and next frame) then an appropriate distribution scheme is splitting in overlapping segments of n + a frames for each processing unit, and processing only the n frames. If each frame is split for rendering (which leads to additionaly communication costs for putting together the final result) then use the same scheme mentioned above for data partitioning except within a single frame (e.g. for a large matrix, row splitting with overlap if neighbors are necessary).
I don't know what the input and output representations are and how much bandwidth they need, but I'd think PCI Express is sufficiently fast to do this while keeping the load balancing overhead low.
This is a simple approach used everyday in parallel and high performance computing, for instance applicable to solve large linear systems using (non-contiguous) distributed memory computer architectures (a computing cluster for instance) and LARGE amounts of RAM (more than 32 GB).
I suppose the reasons are pragmatic. Keeping copies of everything is much simpler.
The difference between reading the resources needed to render the frame from local VRAM vs. involving the output processors (which are already heavily loaded), PCI-e interface, memory controller, and system memory is enough to render the latter impractical.
Unified memory architectures such as we are getting on AMD APUs and sort of getting on Maxwell may change this picture. But the older generation cards have to render frames from resources already in VRAM.
Last edited:


