home page polular science Article Details
Science Popularization: Two or Three Matters about GPU (Part 2)
Lu Jiajun 2017-06-02 18:04

Science Popularization: Two or Three Matters about GPU (I) The mentioned programmable shader has great advantages for 3D game designers, but it also brings some interesting problems similar to CPU to GPU engineers. Because it is necessary to send instructions to run, decoding and executing instructions are necessary, and judgment statements and loop statements in shader code will also cause small problems in the execution order. This means that the shader core has become a small computing engine to perform any programming task. Although it is not as flexible as the CPU, it can also perform useful, non graph related tasks.


GPU calculation

Now, the tasks of GPU computing are basically highly parallel - performing a large number of small mathematical calculations at the same time, so its current development direction is machine learning and computer vision. As GPU computing expands in more and more fields, its role will become more and more important. It will become a partner alongside the CPU instead of a component attached to the CPU.

In October 2015, ARM released the latest SoC with CoreLink CCI-550, which is used to integrate CPU GPU、 Main memory is connected with various memory buffers. The new GPU code is Mimir, which can directly obtain data from the cache memory, even when the CPU executes changes, GPU can obtain the same data as CPU without main memory. CCI-550 also allows the CPU and GPU to share the same memory without copying data between the buffers of the CPU and GPU.


Unified shaders and Vulkan

The biggest difference between OpenGL ES 3.0 (or similar DirectX version) and OpenGL ES 2.0 is the unified shader. Looking at the model diagram of Mali-470, we can find that GPU compatible with OpenGL ES 2.0 has two types of shaders, called Vertex Processor and Fragment Processor, which are the vertex shader and fragment shader introduced previously. Mali-470 has one vertex shader and four segment shaders. Looking at the model diagram of Mali-T860, we can find that it supports 16 unified shaders that can be used as vertex shaders or segment shaders. Previously, the case that the shader might be idle has been eliminated.


Vulkan, the 3D graphics API released in February 2016, is another key point, which has brought two important innovations. First, by reducing driver consumption and improving CPU multithreading utilization, significant performance improvement is achieved; Second, it provides a unified API for desktop systems, mobile systems and consoles. Vulkan now supports Windows 7/8/10 For SteamOS, Android and some Linux distributions, the first Android machine supporting Vulkan is Samsung's Galaxy S7.


Power supply problem

Unlike graphics cards on PCs, they have large fans, complex cooling systems, and some of them can also be directly powered if necessary. The GPU volume on smartphones and tablets cannot compare with these graphics cards. In addition, the GPU of the smart phone is powered by the battery, so compared with the desktop level graphics card, these mobile GPUs cannot consume a lot of energy, but must control the heat emission. However, as consumers, we certainly hope that it can have stronger graphics performance, so for mobile GPU engineers, the biggest challenge is not to support the latest 3D API, but how to achieve a balance between higher graphics performance and heat and energy consumption.


summary

Let's review the key points of the two articles: moving 3D graphics is based on triangles, and moving and scaling models is to process the vertices of triangles; The programmable execution unit in the GPU is called the shader core, and game developers can write code based on the shader core; After the vertex shader is processed, it is transferred to the segment shader to convert into pixels, and finally sent to the pixel shader to set the color; 3D game developers can freely call vertex shaders and fragment shaders by programming as needed; The parallel processing characteristics of GPU make it very suitable for machine learning and computer vision.


Translation and arrangement of pictures and texts , due to the limited level of translators, you are welcome to correct any mistakes

Share with friends Share to Weibo
Scan WeChat to share the page with friends
It is recommended to use the built-in sharing function of the current mobile browser
-->
Related articles