首页 > 其他分享 >GPU基础

GPU基础

时间:2023-01-20 21:46:14浏览次数:36  
标签:生命周期 cache 基础 线程 内存 SM GPU 共享内存

CPU基本架构与GPU基本架构

Shared Memory(SM):共享内存,不是缓存

Special Function Units (SFU):特殊功能单元,超越运算(sin,cos)和插值。

MT Issue:Multithreading issuing unit,多线程发布单元,调度指令

I cache:Instruction cache,指令缓存

C cache:Constant cache,常量缓存

 

核(Kernel):在线程上运行的代码部分。

网格(Grid):一组线程块。在全局内存中共享数据。

块(Thread block):线程块,最多512个线程。在共享内存中共享数据。

 

一个SP对应一个Block,块内线程通过共享内存,原子操作和屏障同步进行协作。不同块中的线程无法协作

一个warp有32个线程,在SM上工作,有SM动态调度。

 

流式多处理器(SM)

组成

8个流式处理器

2个特殊功能单元

16KB共享内存

 

内存

线程私有本地内存,仅线程自己可以访问,生命周期与线程一致。

块共享内存,块内所有线程都可访问,生命周期与块一致。

全局内存,所有线程都可以访问,生命周期随着应用程序结束而结束。

常量内存空间,只读,所有线程可以访问,生命周期随着应用程序结束而结束。

纹理内存空间,只读,所有线程可以访问,生命周期随着应用程序结束而结束。

标签:生命周期,cache,基础,线程,内存,SM,GPU,共享内存
From: https://www.cnblogs.com/RedNoseBo/p/17063272.html

相关文章

  • A 不断减损的时间【2023牛客寒假算法基础集训营3】
    A 不断减损的时间原题链接代码点击查看代码#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#include<vector>#includ......
  • Docker 基础知识
    一、名词说明Dockerfile镜像构建文件Images镜像;生成容器Containers容器;微型系统Volumes卷;存放容器运行数据Networksdocker自有网络管理DockerCo......
  • 音频信号处理基础
    傅里叶变换:傅里叶变换——另一种世界观:https://www.cnblogs.com/hizhaolei/p/8051485.html短时傅里叶变换:https://www.cnblogs.com/byeyear/p/6129385.html短时傅里叶变......
  • 基础算法
    快速排序算法voidquick_sort(intq[],intl,intr){if(l>=r)return;inti=l-1,j=r+1,x=q[l+r>>1];while(i<j){......
  • C++ 基础语法2
    #include<iostream>usingnamespacestd;#include<string>#include<time.h>//结构体定义//structStudent//{//stringname;//intage;//intcount;//};//在结构体尾......
  • C++基础语法 3(面向对象、C++在执行过程当中4个区域、引用)
    #include<iostream>usingnamespacestd;//标注空间#include<string>#include<time.h>#include<cstdlib>//面向对象/*C++在执行过程当中4个区域:代码区:存放二进制代码,由操作......
  • C++基础语法4()
    #include<iostream>usingnamespacestd;//标注空间#include<string>#include<time.h>#include<cstdlib>//函数的提高1;函数的默认参数函数的形参可以有默认值!返回类型......
  • C++ 基础语法5(封装、访问权限)
    #include<iostream>usingnamespacestd;//标注空间#include<string>#include<time.h>#include<cstdlib>//C++当中面向对象三大特性:封装、继承、多态//C++当中万事万物都能......
  • C++基础
    I/Ocout保留有效数字问题C++中cout默认保留六位有效数字,并且进行四舍五入修改保留数的方法cout.precision(2);//用这个来改变默认保留几位小数cout<<"保留两位有效:......
  • python基础
    字面量被写下来的固定的值,成为字面量常见的6种值数字intfloatcomplex(复数,以j结尾表示复数),bool控制精度m.n m控制宽度(小数点也计入),设置的宽度小于数字自身不生......