Arm GPU Mali简介

写在最前

因为华为项目的原因,最近开始了解Arm 的 GPU,也就是Mali。Mali的主要架构有两个,上一代架构是Midgard,新一代架构是Bifrost,这两个名字均出自北欧神话,一个是人间,一个是连接人间和神域的彩虹桥。这里主要介绍最近架构Bifrost的架构。

整体架构

下图就是Bifrost架构,Shader Core就相当于NVIDIA的SM,与NVIDIA不同的是,Mali的核心是可配置的,生产商可以根据需求自行设计自己的核数。同样的,各个core共享L2 cache,通过一个类似总线的GPU Fabric相连。

Arm GPU Mali简介_第1张图片

Shader Core架构

对于每个Shader Core的架构如下。其中Execution Engine(以下简写为EE)就类似NVIDIA的SP,但是不同的是,每个核中的EE数量很少。
Arm GPU Mali简介_第2张图片

主要单元有:

  1. Load/store unit

    用于处理所有的内存的读写(除了纹理内存),包括16KB L1 data cache.

  2. Varying unit

    这是一个专门为运算单元加速的单元。

  3. Texture unit

    这个单元是用来访问纹理内存的。

  4. ZS & blend unit

    适用于某些特定的OpenGL ES的操作。

Execution Engine

下图就是主要的架构,每个计算单元能够承载4个线程(在G76中可以承载8个线程)操作,也就是说对于mali GPU的warp大小是变化的,这warp对于内存还有什么调度都是相同的。

Arm GPU Mali简介_第3张图片

你可能感兴趣的:(GPU)