图形硬件与GPU体系结构201004修改3说课讲解.ppt

图形硬件与GPU体系结构201004修改3说课讲解.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
传统流计算处理器 不同应用在各个存储器层次上的带宽需求: CUDA流计算模型 CUDA的存储器架构与传统的流处理器存储架构的区别? 在PTX上面的体现? Shared Memory // Loop over all the sub-matrices of A and B // required to compute the block sub-matrix for (int a = aBegin, b = bBegin; a <= aEnd; a += aStep, b += bStep) { // Declaration of the shared memory array As used to // store the sub-matrix of A __shared__ float As[BLOCK_SIZE][BLOCK_SIZE]; // Declaration of the shared memory array Bs used to // store the sub-matrix of B __shared__ float Bs[BLOCK_SIZE][BLOCK_SIZE]; // Load the matrices from device memory // to shared memory; each thread loads // one element of each matrix AS(ty, tx) = A[a + wA * ty + tx]; BS(ty, tx) = B[b + wB * ty + tx]; // Synchronize to make sure the matrices are loaded __syncthreads(); 从Device memory到Shared memory CUDA PTX $Lt_0_2818: //<loop> Loop body line 71, nesting depth: 1, estimated iterations: unknown .loc 28 86 0 ld.global.f32 %f2, [%rd23+0]; st.shared.f32 [%rd14+0], %f2; .loc 28 87 0 ld.global.f32 %f3, [%rd19+0]; st.shared.f32 [%rd15+0], %f3; .loc 28 90 0 bar.sync 0; Texture Cache Access __global__ void transformKernel( float* g_odata, int width, int height, float theta) { // calculate normalized texture coordinates unsigned int x = blockIdx.x*blockDim.x + threadIdx.x; unsigned int y = blockIdx.y*blockDim.y + threadIdx.y; float u = x / (float) width; float v = y / (float) height; // transform coordinates u -= 0.5f; v -= 0.5f; float tu = u*cosf(theta) - v*sinf(theta) + 0.5f; float tv = v*cosf(theta) + u*sinf(theta) + 0.5f; // read from texture and write to global memory g_odata[y*width + x] = tex2D(tex, tu, tv); } #endif // #ifndef _SIMPLETEXTURE_KERNEL_H_ .tex .u64 tex; mov.f32 %f132, %f80; mul.f32 %f133, %f8

文档评论(0)

186****7785 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档