- 博客(7)
- 资源 (1)
- 收藏
- 关注
转载 CPU, Memory Barrier, Cache Coherence
乱序也分读/写,在 x86 IA32 这种体系下只有“读乱顺”,而没有“写乱序”,在 x86 IA32 下“写”是严格顺序的。对于软件来说,为了保证 CPU流水线的效率提升不导致混乱,确保 process ordering 与 program ordering 的一致性问题,而使用了“compiler barrier”,“memory barrier”(下面会讲到),在某些平台下,如 WINDOW
2010-03-11 09:18:00 678
转载 Cache Coherence on AMD HyperTransport
Cache Coherence on AMD HyperTransport ( 很多东西是我的推测,请带着的怀疑的眼光看这篇文章 )这两天研究了一下AMD在hypertransport上实现cache coherence的方法,总结如下:(1) Memory 1 = Processor 1 -------- Processor 2 = Memory 2
2010-03-10 15:32:00 710
转载 高速缓冲存储器Cache的工作原理
Cache的工作原理 1.Cache的引入 请注意下面两种情况: ①大容量主存一般采用DRAM,相对SRAM速度慢,而SRAM速度快,但价格高。 ②程序和数据具有局部性,即在一个较短的时间内,程序或数据往往集中在很小的存储器地址范围内。 因此,在主存和CPU之间可设置一个速度很快而容量相对较小的存储器,如图3.35所示。在其中存放CPU当前正在使用以及一个较短的时间内将要使用的程序和数据,这样,可
2010-03-10 15:11:00 1235
转载 CPU学习 (Cache Coherence)
在2004年写的一篇文章x86汇编语言学习手记(1)中,曾经涉及到gcc编译的代码默认16字节栈对齐的问题。之所以这样做,主要是性能优化方面的考虑。 大多数现代cpu都one-die了l1和l2cache。对于l1 cache,大多是write though的;l2 cache则是write back的,不会立即写回memory,这就会导致cache和memory的内容的不一致;另外,对于m
2010-03-10 14:56:00 552
原创 地形中的画刷
画刷很多时候又叫地形贴花decal,这个东西用的还是很广泛的,比如CS中在墙上可以喷标记,以及墙上的弹孔等也都属于类似的东西。地形中的贴花一般实现技术有如下几种:1,投影纹理 OGRE中有关于投影纹理应用的例子,关于投影纹理的原理网上也有很多文章,在OGRE中使用起来还是蛮方便的,但是就是需要对地形渲染两遍,一遍正常渲染,一遍用投影的纹理渲染,然后把这两个混合的结果融合,如果我们的地
2010-03-01 13:53:00 891
原创 源程序到CPU执行要经历的整个流程
以下内容是个人揣测,不正确的几率很高,这里只是写下来备忘。这里以X86平台为例进行说明。 编译: 编译器在编译代码的时候,是以一个cpp和一个h为基本编译单元的,每个编译单元我们这里称为一个编译模块,每个编译模块都可能定义全局变量和静态变量以及局部变量,同时可能引用其他.编译模块中的全局变量。每个编译单元编译后生成的都是一个.obj文件,这个文件中可以说是由很多段
2010-02-25 17:26:00 887
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人