Double the performance of PCs and smartphones without hardware changes with SHMT

Double the performance of PCs and smartphones without hardware changes with SHMT

Increase the processing performance of a computer usually requires a hardware upgrade or software configuration improvement. Researchers at the University of California have devised a new code execution model that double the processing speed without modifying the hardware, in devices such as notebooks and smartphones.

The scholars’ promise is to increase performance by using only optimized software algorithmscapable of making even better use of the hardware equipment that modern devices can offer.

The research, presented at the 56th IEEE/ACM International Symposium on Chip Microarchitecture in Toronto, Canada, introduces the concept of Simultaneous and Heterogenous Multithreading (SHMT).

What is SHMT and how it can double the performance of PCs and smartphones

The team of researchers explains that SHMT has enormous potential: not only to increase hardware performance but also to increase efficiency and significantly reduce energy consumption.

Although today we still talk, often too generically, about processor to describe the main microchip that governs the operation of an electronic device, it is usually a combination of units working together. Next to the CPU, there is the graphics processing unit (GPU) but also an NPU (Neural Processing Unit) of una TPU (Tensor Processing Unit).

NPUs are specialized processing units for processing involving the use of neural networks; TPUs are specifically designed for machine learning operations, offering significantly superior performance to the most common GPUs. In general, TPUs can be up to 30 times faster than GPUs, but are less flexible as they are based on ASIC architecture (Application-Specific Integrated Circuit), custom designed. GPUs, on the other hand, are more versatile and suitable for a wide range of SIMD computations (Single Instruction Multiple Data).

Unlike conventional models, SHMT allows the simultaneous use of different types of processing units for the same portion of code. The developers, led by Professor Hung-Wei Tseng of the Department of Electrical Engineering and Computer Science at the University of California (Riverside), say that SHMT provides an abstraction and runtime system to facilitateparallel execution of the code.

Eliminate bottlenecks and push parallel execution

In many situations, thecomputing environment of modern computers is heterogeneous, with specialized processing units such as CPU, GPU, NPU/TPU. Traditional programming models focus on using the most efficient processing units for various types of code.

However, with the method of individual execution of tasks with a specific unit, a bottleneck when transferring information to the next processing unit after executing a process. To take full advantage of the benefits of heterogeneous computersSHMT allows the simultaneous execution of tasks in parallel on different processing units.

Tseng and his colleagues tested SHMT on an SoC-based system ARM Cortex-A57, NVIDIA GPU and Google Edge TPU. The results show a increase in execution speed of code by approximately 1.96 times and a reduction in power consumption by 51%.

However, we are still at the beginning: the proposed system is currently more of an embryonic test aimed at demonstrating the potential of the idea, rather than something that can immediately be implemented in our PCs and modern smartphones. The researchers, for example, point out that there are still significant challenges to overcome in terms of dividing workloads across units while ensuring that no slowdowns are introduced.

Opening image credit: Intel.

Leave a Reply

Your email address will not be published. Required fields are marked *