如今的GPU都包含固定功能逻辑芯片,主要负责各种绘图任务,包括纹理过滤、显示处理、Alpha混合、光栅处理等等,而对于一款能支持通用计算的GP-CPU来说,情况就会不太相同。
Larrabee执行某种绘图任务时不像GPU那样采用逻辑功能芯片,而是采用了一种软件(我们简单可以理解为软加速,当然Intel会进行很好的优化),这种软件执行的效能非常高。Larrabee内部不包括用于显示处理、Alpha混合、光栅处理以及interpolation(插补算法)的固定功能逻辑芯片。这样的话,就需要Larrabee具备某种特性以及某种优化性能,而且需要使得以上这些任务处理可以在渲染管线中不同的区域进行执行操作,具体在什么区域执行主要取决于待执行的任务在哪里执行更加有效。如果利用软件的方式控制这些任务执行的话,Larrabee就可以为执行某种任务需要多少性能进行智能分配,而不是利用硬件来满足该任务执行时提供的性能峰值。
在这几个图形处理功能中,Larrabee唯一没有采用软件处理的功能是“纹理过滤”,Larrabee之所以内建了纹理过滤逻辑单元,主要是因为Larrabee的这种软件功能无法有效执行纹理过滤绘图任务。根据专家们的研究分析,如果用软件功能执行纹理过滤绘图任务的话,过程耗时将是固定功能逻辑单元的12-40倍,而具体多少倍取决于数据是否需要压缩。具体原因如下:
Larrabee纹理过滤逻辑单元与普通的GPU纹理逻辑单元非常相似。这种逻辑单元可以为每颗核心提供32K的纹理缓存,而且支持所有的普通操作,比如说DirectX 10压缩纹理格式、贴图处理(mipmapping)、各向异性过滤(Anisotropic Filtering)等操作。
Larrabee核心通过L2高速缓存向纹理单元传递命令,并以相同的方式接受指令。纹理单元执行从虚拟到现实的页转换(page translation),而且可以告诉核心任何一个页错过(page miss),核心收到信息后就会再次对暂存在存储单元里页的发出纹理过滤命令。如果软件可以提供足够的性能,Larrabee也可以用核心直接执行纹理操作。