
The model of any process demonstrates its functionality and is useful for its study and analysis. For example, the Turing machine is a model for computation. However, the random-access machine (RAM) model is close to the architecture of serial processing and the parallel RAM (PRAM) model is close to parallel processing. These models are time tested and are the basis of computer science and engineering development. Technology advancements have had a tremendous impact on serial processing speed. Now, communication time (with memory) far exceeds central processing unit (CPU) processing.
The viewpoint presented in this article suggests a new model that also accounts for communication time. In a typical case of the addition of two 32-bit words, the energy needed to communicate with global memory is many thousand times more than what is required to compute the addition, which indicates that communication complexity is dominate to computational complexity. These latter complexities are termed as energy complexities, because energy consumed is closely related to clock cycles spent. It is said that, in some cases, communication complexity can be improved via proper design decisions of whether to store the intermediate results or recompute using perceptron networks.
However, the complexity needs of computation do not arise in every situation, for example, in user interface (UI) design, but also in other situations like training neural networks and optimization and simulation problems. The accounting of both computational and communication complexity is important.
There is a lot of concern about energy complexity. In 2018, data centers around the world consumed about one percent of the global electricity, and the figure may rise to three to 14 percent by 2030. This scenario signifies the need for an accurate model of computation so that more efficient algorithms can be picked for any given problem.
Overall, this interesting article focuses on important questions that may lead to a new, multidisciplinary research domain.