谈一谈AGP
typedef enum D3DPOOL {
D3DPOOL_DEFAULT = 0,
D3DPOOL_MANAGED = 1,
D3DPOOL_SYSTEMMEM = 2,
D3DPOOL_SCRATCH = 3,
D3DPOOL_FORCE_DWORD = 0x7fffffff
} D3DPOOL, *LPD3DPOOL;
D3DPOOL_DEFAULT
在"显存(video memory)"中,包括"本地显存(local video memory)"和"AGP内存",表明资源将按照"设备访问(Device Acess)",这里设备指显卡。
D3DPOOL_MANAGED
当需要时自动拷贝到显卡可直接访问的内存中(device-accessible memory),在设备丢失时不需要重建.
D3DPOOL_SYSTEMMEM
资源位于系统内存中,不能直接被设备访问.会消耗系统内存,而非可分页内存.
D3DPOOL_SCRATCH
占用系统内存,但是格式什么的都无限制.
D3DPOOL_FORCE_DWORD
凑数的,没实际用途.
什么是本地显存?什么是AGP内存?
本地显存是指显卡本身的内存,物理上在显卡上.AGP实际是一块特殊的系统内存区域,位于主板上.这段区域是CPU和GPU共享资源区,CPU写入快读取慢,GPU读取很快,但是没有直接读取本地显存快.
AGP如何工作?
AGP的全称是"加速图形接口Accelerated Graphics Port".专门用于电脑和显卡通讯.1996年intel把它带入公众视野,之前使用的是PCI总线(Peripheral Component Interconnect bus).PCI总线是条用于显卡向CPU传输信息的通路.但是PCI不是独占的,其他设备也使用PCI向CPU发送信息,当所有外围设备都通过PCI向CPU发信息后,就需要等候CPU一条条的执行.于是瓶颈诞生了.AGP是基于PCI设计的,但是不是一个总线,是基于点对点的GPU和CPU通讯,这就极大加速了复杂图形显示时信息传输瓶颈.
AGP是如何加速图形渲染的呢?
专用的端口:显卡可以完全占用这条数据路线,解决了数据阻塞的问题.
流水线处理: AGP使GPU在接收到渲染图形的信息后,请求所有所需信息并一次性发送渲染指令.而回到PCI时代,情况会变成:显卡收到图像的高,等待...显卡收到图像的宽,等待...最后收到所有信息,发送渲染指令.
边带寻址: 发送信息需要From和To,PCI是把这个信息同工作数据打包在一起.为了辨明这个信息,就需要拆包解析,进而导致占用时间和空间.AGP会为每个工作数据包加上明确的寻址信息.省去了PCI需要消耗的时间.
谈一谈AGP的更多相关文章
- 谈一谈Java8的函数式编程(二) --Java8中的流
流与集合 众所周知,日常开发与操作中涉及到集合的操作相当频繁,而java中对于集合的操作又是相当麻烦.这里你可能就有疑问了,我感觉平常开发的时候操作集合时不麻烦呀?那下面我们从一个例子说起. 计 ...
- 谈一谈泛型(Generic)
谈一谈泛型 首先,泛型是C#2出现的.这也是C#2一个重要的新特性.泛型的好处之一就是在编译时执行更多的检查. 泛型类型和类型参数 泛型的两种形式:泛型类型( 包括类.接口.委托和结构 没有泛型枚 ...
- 从一张图开始,谈一谈.NET Core和前后端技术的演进之路
从一张图开始,谈一谈.NET Core和前后端技术的演进之路 邹溪源,李文强,来自长沙.NET技术社区 一张图 2019年3月10日,在长沙.NET 技术社区组织的技术沙龙<.NET Core和 ...
- 谈一谈Elasticsearch的集群部署
Elasticsearch天生就支持分布式部署,通过集群部署可以提高系统的可用性.本文重点谈一谈Elasticsearch的集群节点相关问题,搞清楚这些是进行Elasticsearch集群部署和拓 ...
- 谈一谈iOS事件的产生和传递
谈一谈iOS事件的产生和传递 1.事件的产生 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中. UIApplication会从事件队列中取出最前面的事件,并将事件 ...
- 谈一谈对MySQL InnoDB的认识及数据库事物处理的隔离级别
介绍: InnoDB引擎是MySQL数据库的一个重要的存储引擎,和其他存储引擎相比,InnoDB引擎的优点是支持兼容ACID的事务(类似于PostgreSQL),以及参数完整性(有外键)等.现在Inn ...
- 谈一谈APP版本号问题
如题:谈一谈APP版本号问题 为什么要谈这个问题,周五晚上11~12点,被微信点名,说APP有错,无效的版本号,商城无法下单.我正在准备收拾东西,周末回老家,结果看到这样问题,菊花一紧.我擦,我刚加的 ...
- 谈一谈深度学习之semantic Segmentation
上一次发博客已经是9月份的事了....这段时间公司的事实在是多,有写博客的时间都拿去看paper了..正好春节回来写点东西,也正好对这段时间做一个总结. 首先当然还是好好说点这段时间的主要工作:语义分 ...
- 蓝的成长记——追逐DBA(5):不谈技术谈业务,恼人的应用系统
***************************************声明*************************************** 个人在oracle路上的成长记录,当中 ...
- 谈一谈并查集QAQ(上)
最近几日理了理学过的很多oi知识...发现不知不觉就有很多的知识忘记了... 在聊聊并查集的时候顺便当作巩固吧.... 什么是并查集呢? ( Union Find Set ) 是一种用于处理分离集合的 ...
随机推荐
- MFC中CTime获取日期时间的方法
MFC中CTime类的功能非常强大,可以获取年.月.日.小时.分钟.秒.星期等等,最最重要的是可根据需要去格式化.下面是具体的使用方式: ① 定义一个CTime类对象 CTime time; ② 得到 ...
- Windows环境Vim编辑器如何执行Ruby代码
1.下载 Ruby 1.8.5(2006-8-25) for Windows: 在网页http://www.rubychina.net/downloads/ 上找到 --〉Ruby on Windo ...
- SQL Server中JOIN的用法
JOIN 分为:内连接(INNER JOIN).外连接(OUTER JOIN).其中,外连接分为:左外连接(LEFT OUTER JOIN).右外连接(RIGHT OUTER JOIN).全外连接(F ...
- svn 基本使用
通过脚本删除物理文件已经不存在的文件 svn st | sed -n '/!/p' | awk '{print $2}' | xargs svn delete 或 svn st | awk '{if ...
- [转载]python实现带验证码网站的自动登陆
原文地址:python实现带验证码网站的自动登陆作者:TERRY-V 早听说用python做网络爬虫非常方便,正好这几天单位也有这样的需求,需要登陆XX网站下载部分文档,于是自己亲身试验了一番 ...
- Unique Word Abbreviation -- LeetCode
An abbreviation of a word follows the form <first letter><number><last letter>. Be ...
- xml文件生成与下载
写在前面: 最近要做一个新的功能,点击按钮,可以根据数据生成对应的xml文件并保存.下面记录一下在做的过程的一些疑惑与问题(我就是太笨了,一些很简单的知识都不知道,不过通过这次跟蛋蛋的交流,解决了我的 ...
- (转)stage 3d or unity 3d
这个是这样子的.stage3d如果不使用flascc的话,性能会卡在as上面.你没卡是因为你用的效果还不够高级.往深了走的高端应用就是卡as性能上.这不是你代码能优化了的.我们后来都改用flascc写 ...
- ANDROID模拟器访问本地WEB应用10.0.2.2
在一般的Java Web程序开发中,我们通常使用localhost或者127.0.0.1来访问本机的Web服务,但是如果我们在Android模拟器中也采用同样的地址来访问,Android模拟器将无法正 ...
- Jenkins配置Publish Junit test result report(转)
参考这篇文章:http://www.yiibai.com/jenkins/jenkins_unit_testing.html 插件:JUnit Plugin