Directx11教程(14) D3D11管线(2)
下面我们来了解一些GPU memory的知识,主要参考资料:http://fgiesen.wordpress.com/0211/07/02/a-trip-through-the-graphics-pipeline-2011-part-2
【注:请参考另一篇日志:2012-11-13:http://www.cnblogs.com/mikewolf2002/archive/2012/11/13/2768804.html】
下面我们看下memory 如何与GPU和 host连接,了解video memory的工作flow:
GPU中一些快速的client,比如Depth block,color block,texture block等都是直接和MC连接,而一些数据量不是很大的block,比如command processor(CP)要经过hub,然后再到传到相应的MC(Memory controller)。
在hub中,也许有VM L2, 会进行一些page table的查找,之后请求被路由到相应的MC,MC中主要包括client interface, VM L1, arb等模块。Client infterface会和不同的client打交道,然后把它们传递到VM L1,进行page table的查找,最后进过ARB仲裁,进入到相应的GDDR中。GPU的MC通常都是32bit的,而DDR3的MC通常是64位,我们可以通过下面公式计算得到gpu的memory带宽:mclk * datarate* channelwidth*channel number/8/1000, 简化即为:mclk*4*32*channel number/8/1000, 假设显卡有12 个mc channel,则memory带宽为:1375*4*12*32/8/1000=264GB/s
其它的一些PCIE设备和主机,都是通过PCIE总线,然后进入MMU(内存管理单元),再进入hub,这儿MMU是一个总称,在不同实现中,可能MMU包括很多block。
GPU和主机以及其它设备的交互都是通过PCIE总线进行的,GPU和主机之间通常使用PCIE2.0 16 lane(最新的显卡使用PCIE3.0), 上行、下行都达到了8GB/s,其它慢速设备,比如display可能只需要4lane就够了。
PCIE的详细介绍见:http://www.cnblogs.com/mikewolf2002/archive/2012/03/20/2408389.html
Directx11教程(14) D3D11管线(2)的更多相关文章
- Directx11教程(14) D3D11管线(3)
原文:Directx11教程(14) D3D11管线(3) 现在我们开始学习一些CP(command processor)的知识.参考资料: http://fgiesen.wordpres ...
- Directx11教程(53) D3D11管线(8) GS的调度执行
原文:Directx11教程(53) D3D11管线(8) GS的调度执行 在前面的教程中,我们分析了VS-PS的shader管线组合执行过程,本章我们分析一下VS-GS-PS的管线执行 ...
- Directx11教程(18) D3D11管线(7)
原文:Directx11教程(18) D3D11管线(7) 光栅化阶段(RS)之后,将进入PS/OM阶段. 参考外文资料:http://fgiesen.wordpress.com/2011/07/01 ...
- Directx11教程(17) D3D11管线(6)
原文:Directx11教程(17) D3D11管线(6) VS shader输出clip空间的顶点位置及参数信息(比如颜色)到一个FIFO中,之后PA(primitive assembl ...
- Directx11教程(16) D3D11管线(5)
原文:Directx11教程(16) D3D11管线(5) 本章我们学习VS中具体做些什么事情? 首先再看看我们的VS shader代码: Clolor.vs - PixelInputType Col ...
- Directx11教程(15) D3D11管线(4)
原文:Directx11教程(15) D3D11管线(4) 本章我们首先了解一下D3D11中的逻辑管线,认识一下管线中每个stage的含义. 参考资料:http://fgiesen.wordpress ...
- Directx11教程(13) D3D11管线(1)
原文:Directx11教程(13) D3D11管线(1) 从本篇教程开始,我们暂停代码的学习,先来了解一下D3D11的管线,这些管线不涉及具体的硬件,而是着重于理解能够支持D3D11的管 ...
- Directx11教程(66) D3D11屏幕文本输出(1)
原文:Directx11教程(66) D3D11屏幕文本输出(1) 在D3D10中,通过ID3DX10Font接口对象,我们可以方便的在屏幕上输出文字信息,一个DrawText函数就能解决所 ...
- Directx11教程(59) tessellation学习(1)
原文:Directx11教程(59) tessellation学习(1) 在D3D11管线中,新增加了3个stage, Hull shader, Tessellator, Domain s ...
随机推荐
- IOS网络编程。。
ASI 与AFN框架: 越低层性能越好. AFNetworking ASIHTTPRequest(性能好点) NSURL会更好. NSURL NSURLRequest NSData * data = ...
- XE3随笔10:TSuperType
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...
- iscsi: 环境搭建
组网环境 +----------+---------------+---------------+ | hostname | ip address | iscsi role | +---------- ...
- oracle 未找到提供程序。该程序可能未正确安装
使用ADO连接oracle数据库时,连接串使用Provider=OraOLEDB.Oracle时提示"未找到提供程序.该程序可能未正确安装". 原因:由于我之间安装oracle_o ...
- 精妙SQL语句收集
SQL语句先前写的时候,很容易把一些特殊的用法忘记,我特此整理了一下SQL语句操作.(转) 一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数 ...
- 将src非空的属性注入到des中
package lizikj.bigwheel.common.vo.merchandise.util; import java.lang.reflect.Field; import lizikj.bi ...
- 使用的组件:Jcrop
JcropImage cropping for jQuery Jcrop 是一个功能强大的 jQuery 图像裁剪插件,结合后端程序(例如:PHP)可以快速的实现图片裁剪的功能. 官网地址:http: ...
- EmberJs之Ember-Data
写在前面 最近比较忙,换了新工作还要学习很多全新的技术栈,并给自己找了很多借口来不去坚持写博客.常常具有讽刺意味的是,更多剩下的时间并没有利用而更多的是白白浪费,也许这就是青春吧,挥霍吧,这不是我想要 ...
- C#设计模式(18)——中介者模式(Mediator Pattern)
一.引言 在现实生活中,有很多中介者模式的身影,例如QQ游戏平台,聊天室.QQ群和短信平台,这些都是中介者模式在现实生活中的应用,下面就具体分享下我对中介者模式的理解. 二. 中介者模式的介绍 2.1 ...
- 自己动手写UI库——引入ExtJs(布局)
第一: 来看一下最终的效果 第二: 来看一下使用方法: 第三: Component类代码如下所示: public class Component { pub ...