Throughout the entire history of computer architecture, the von Neumann model has been the most mainstream model for computer systems architecture. Data flow computer systems are undoubtedly the most well-studied type of non-von Neumann computer architecture. In this paper, from the perspective of the computer architecture development, we analyze the important role that data flow computing thinking has played in both innovation in computer architecture and in the development of computer architecture over time. We first review the thinking behind data flow computing and analyze the limitations it faced in its early stages. Then we analyze two important technologies used in modern CPUs-out-of-order execution and multi-threading technology-that were both developed using data flow computing thinking. We continue to view streaming computing, streaming processor architecture, and modern GPUs through the lens of data flow computing thinking. Further, we analyze how to apply data flow computing thinking to the development of computer systems in the era of big data intelligence. Finally, we summarize the rules of data flow computing thinking and forecast future development trends.
Read full abstract