POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 5991|回复: 18
打印 上一主题 下一主题

GPU 中的Fixed Function

  [复制链接]
跳转到指定楼层
1#
发表于 2009-8-23 14:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
计算机体系结构的基本原理是,任何软件能够实现的,硬件都能够实现,相反也成立,这被成为硬件软件等效原理。这一原理只是功能等效,性能来说,良好优化和设计的硬件通常要比同样水平的软件快很多,同样,开发周期长,开发的成本,也要高不少,体系结构研究的重点就是从需要出发,寻求最佳的软硬件平衡点,在一定的成本约束下,获得最高的性能。
GPU 中也是一样,在目前统一渲染成为主题的今天,US 和Fixed Function 是配合的,当我们重点看SP 的数量的时候,其实GPU 性能的很大程度是由Fixed Function 来完成的,看起来nVidia 和AMD 的SP 设计思路很大不同,但是他们的Fixed Function 差异可能更大,而更隐蔽,如果有条件,做一下DX10 的Profiling,可以发现相同价位的显卡,在DX API 的具体函数表现是不同的,这个差异就来自两方面,SP 的特性和Fixed Function 共同决定的,当然也和整个GPU 的层次架构有关系,这是GPU 优化的主要工作基础,从Profiling 的结果可以分析出瓶颈和问题。
说到Fixed Function,其实PS3 是个很好的例子,PS3 中Cell 不仅仅充当主处理器,而且还兼有GPU 的部分功能,Fixed Function 由RSX 做,Cell 最大的问题是PPU 的性能太低,结构太简单,制约了整体性能,对编程的要求就很高了,从实验看,PPU 喂饱两个SPU 就很勉强了,对于6个甚至8个SPU 的情况,SPU 饥饿的情况太多。Larrabee  如果采用Cell+RSX 的设计,可能设计周期可以短不少。
2#
发表于 2009-8-23 17:18 | 只看该作者
固定功能单元外挂吗?这样的也会带来一些问题,例如占用的 PCB 位置。
回复 支持 反对

使用道具 举报

3#
 楼主| 发表于 2009-8-23 17:37 | 只看该作者
2# Edison
我的意思是模块化,CMP吧。
其实很多种做法,现在有倾向忽视Fixed Function了。
回复 支持 反对

使用道具 举报

ivanlau 该用户已被删除
4#
发表于 2009-8-23 17:43 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

5#
发表于 2009-8-23 17:58 | 只看该作者
类似 Xenos 那样吧,但是它们的设计依然是无法解决纹理带宽的问题,最终其实也是得做成同一个 die 经济上才划算。
回复 支持 反对

使用道具 举报

6#
发表于 2009-8-24 00:28 | 只看该作者
Larrabee有Fixed Function Unit啊,不过就只有纹理单元而已。

理想情况还是完全可编程的,什么功能用Fixed Function Unit实现主要考虑就是功耗和成本。Intel觉得只有纹理单元需要用硬件电路实现也一定是经过实际分析研究的。
回复 支持 反对

使用道具 举报

7#
发表于 2009-8-24 02:44 | 只看该作者
当我们重点看SP 的数量的时候,其实GPU 性能的很大程度是由Fixed Function 来完成的,看起来nVidia 和AMD 的SP 设计思路很大不同,但是他们的Fixed Function 差异可能更大

——————————————————————————————————————————————

请大牛明示,AMD和NV的Fixed FUnction的差异在什么地方?最好有一些量化的数据,这个地方我很关系

  :〉
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2009-8-24 08:23 | 只看该作者
7# ic.expert
纯属猜测,有同事做过G80 和R600 的DX10 Profilling,差异性表现比较显著,所以有这样的猜测。
回复 支持 反对

使用道具 举报

9#
发表于 2009-8-24 11:42 | 只看该作者
Intel也许是这样想的: 固定渲染单元最终可以被shader指令替换,shader指令也可以由x86扩充指令替换。
回复 支持 反对

使用道具 举报

10#
 楼主| 发表于 2009-8-24 13:13 | 只看该作者
目前的情况是,各GPU 厂商,都简化了Fixed Function,而主要依靠SP 软件来做。在冯体系结构下,软件的时间代价太大了,不适合确定性工作。
回复 支持 反对

使用道具 举报

11#
发表于 2009-8-25 22:22 | 只看该作者
奥,大牛谦虚,我就是随便问一下。 主要想看看纹理那边看看大牛有什么收获~~
回复 支持 反对

使用道具 举报

头像被屏蔽
12#
发表于 2009-8-25 22:48 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

13#
发表于 2009-9-8 14:50 | 只看该作者
进来学习一下~~~
回复 支持 反对

使用道具 举报

14#
发表于 2009-10-11 13:28 | 只看该作者
10# tomsmith123
fixfunction简化?应该不会吧,图形芯片开发都是不断的堆新功能上去,架构大改动的比较少吧
回复 支持 反对

使用道具 举报

leapro 该用户已被删除
15#
发表于 2010-3-6 17:50 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

16#
发表于 2010-3-6 17:58 | 只看该作者
tomsmith123
fixfunction简化?应该不会吧,图形芯片开发都是不断的堆新功能上去,架构大改动的比较少吧
sgyhunter 发表于 2009-10-11 13:28


所谓的简化,是指把固定功能单元中的运算挪到通用处理器上,例如 alpha blending、内插以前这些都是固定功能单元执行,现在都是通用处理单元上跑,而且速度非常好。
回复 支持 反对

使用道具 举报

17#
发表于 2010-3-6 18:46 | 只看该作者
嘿嘿,如果考虑到增强通用性的话,的确应该减少部分专用单元

不太理解10L,这和冯体系有关么?
回复 支持 反对

使用道具 举报

18#
发表于 2010-4-30 15:18 | 只看该作者
: 固定渲染单元最终可以被shader指令替换,shader指令也可以由x86扩充指令替换
回复 支持 反对

使用道具 举报

19#
发表于 2010-5-1 09:32 | 只看该作者
Alpha blending 至少在fermi和rv8xx系列里面都还是通过固定功能单元ROP(Render Output Unit or Raster Operations Pipeline) 来实现的. Programmable ROP, 就是你说的通过shader来做blending, 至少在最近一两年不可能在NV或者ATI的GPU上实现.

当然如果你是指LRB, 那的确是在shader里面实现的. LRB唯一的fixed functional unit就是texture. 传统的GPU的fixed functional units还包括 rasterizer, vertex assembler, etc.

所谓的简化,是指把固定功能单元中的运算挪到通用处理器上,例如 alpha blending、内插以前这些都是固定 ...
Edison 发表于 2010-3-6 17:58
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2024-5-2 18:02

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表