北京通州网站制作公司,做任务挣钱的网站app,东城网站建设工作室,wordpress删除脚标#xff11;#xff0e;shared memory __shared__ 声明为共享内存#xff0c;将会保存在共享内存中 #xff12;#xff0e;constant memory __constant__ 声明为常量内存#xff0c;将会保存在常量内存中#xff0c;常量内存是只读内存#xff0c;声明时要静态的分配…shared memory __shared__ 声明为共享内存将会保存在共享内存中 constant memory __constant__ 声明为常量内存将会保存在常量内存中常量内存是只读内存声明时要静态的分配空间 将数据从CPU拷贝到常量内存中时用cudaMemcpyToSymbol例如cudaMemcpyToSymbol( s, temp_s,sizeof(Sphere) * SPHERES) 常量内存带来性能提升的原因 对常量内存的单次读操作可以广播到临近线程将节约次读操作 常量内存的数据将缓存起来对相同地址的连续读操作将不会产生额外的内存通信量 当处理常量内存时NVIDIA硬件将单次内存读操作广播到每个半线程束线程束中线程的一半如果半线程束中的每个线程都从常量内存的相同地址上读取数据那么使用常量内存产生的内存流量将会是使用全局内存的。但是当所有的线程读取不同的地址时会降低性能因为若半线程束中的个线程访问常量内存中的不同数据时这次不同的读取操作将会被串行化从而需要倍的时间来发出请求但在全局内存中将会同时发出请求。转载于:https://www.cnblogs.com/shrimp-can/p/5052305.html