Does this image means that we could only utilize 1 / 4 of the total computing resources?
kevkang
No, the fragments in this example all run on a single core.
jackcsullivan
This is an instance of multithreading and context switching between threads such that the core is always fully utilized.
jpark96
Do we ever need to worry about dependency cycles?
mishywangiepie
Are there ever situations in which certain fragments have higher priority over others which affect the ordering of rendering?
julialuo
Adding onto @mishywangiepie, for rendering does a GPU typically wait until all fragments are rendered and display everything at once or display them one-at-a-time when they are individually completed?
ryanpmeyer
For those who took CS61C last semester with Garcia, this is an example of pipelining (Garcia's laundry analagy). Here is a link to the pipelining slides for anyone who forgot how this is implemented on the hardware level: https://drive.google.com/open?id=1F6EEO6K4vjNBci7G7WIyb_12nQLWXOo8
mehnadnerd
@julialuo and @mishywangiepie, fragments are independent, which allows for independent processing. The Z-buffer handles issues where fragmetns are written to the same location. All fragments are rendedered and the frame is complete before any of it is displayed, otherwise the user would see the frame being drawn.
Does this image means that we could only utilize 1 / 4 of the total computing resources?
No, the fragments in this example all run on a single core.
This is an instance of multithreading and context switching between threads such that the core is always fully utilized.
Do we ever need to worry about dependency cycles?
Are there ever situations in which certain fragments have higher priority over others which affect the ordering of rendering?
Adding onto @mishywangiepie, for rendering does a GPU typically wait until all fragments are rendered and display everything at once or display them one-at-a-time when they are individually completed?
For those who took CS61C last semester with Garcia, this is an example of pipelining (Garcia's laundry analagy). Here is a link to the pipelining slides for anyone who forgot how this is implemented on the hardware level: https://drive.google.com/open?id=1F6EEO6K4vjNBci7G7WIyb_12nQLWXOo8
@julialuo and @mishywangiepie, fragments are independent, which allows for independent processing. The Z-buffer handles issues where fragmetns are written to the same location. All fragments are rendedered and the frame is complete before any of it is displayed, otherwise the user would see the frame being drawn.