首页 > 编程语言 >高性能计算-GPU编程模型(21)

高性能计算-GPU编程模型(21)

时间:2024-12-29 22:46:02浏览次数:6  
标签:21 编程 线程 内存 GPU 全局 共享内存

1. GPU的内存模型

GPU编程数据需要从CPU主存拷贝到GPU全局存储器,所有线程共享全局存储。开辟的全局存储器空间指针在CPU代码中不能解引用使用,应在计算完结果后再拷贝回CPU主存空间。线程块内共享存储。

(1) 线程私有的存储有寄存器、本地内存

(2) 线程块内有块内线程共享的共享内存,在每个线程块上都有声明的共享内存数据副本

(3) 还有网格共享的全局内存、纹理内存、常量内存

(4) SM上的内存叫片上内存(速度快,延迟低,容量小,包含寄存器和共享内存),SM以外的叫片外内存(全局、本地、纹理内存)

2. GPU的线程层次

线程运行在六处理器SP上;线程块运行在流多处理器SM上,一个线程块内线程数量受限硬件限制,一般最大1024个线程,这些线程还会被组合成wrap线程束,共同工作或停止;一个网格含有多个线程块。

3. 线程定位

可以对线程、线程块、网格进行逻辑坐标定义,最多可用三维坐标定义一个线程块及线程,并且在核函数内,所有线程都可以根据三维坐标计算出一个一维的坐标值ID,可以在编程逻辑用来标识所有线程。

问题:

(1)线程切换0开销,隐藏延迟的的问题

image

标签:21,编程,线程,内存,GPU,全局,共享内存
From: https://www.cnblogs.com/anluo8/p/18622550

相关文章

  • 实验7 文件应用编程
    实验任务四:源代码:task4.c1#define_CRT_SECURE_NO_WARNINGS2#include<stdio.h>3#defineN1000045intmain(){6charch[N];7intline=1;8intn=0;9intj=0;10FILE*fp;11fp=fopen("C:/Users/lenovo......
  • 2024-2025-1(20241321)《计算机基础与程序设计》第十四周学习总结
    这个作业属于哪个课程<班级的链接>(2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2024-2025-1计算机基础与程序设计第十四周作业)这个作业的目标<深刻学习C语言,反思一周学习,温故知新>作业正文...本博客链接https://www.cnblogs.com/guc......
  • Flink状态编程
            Flink处理机制的核心就是“有状态的流处理”,在某些情况下,一条数据的计算不仅要基于当前数据自身,还需要依赖数据流中的一些其他数据。这些在一个任务中,用来辅助计算的数据我们就称之为这个任务的状态。一、按键分区状态(KeyedState)分类        按键分......
  • [COCI2021-2022#1] Logičari
    前言终于可以有底气的显然了思路这道题在考场上时间不够了,但我是做得出来的吧在这推一遍,检查一下首先套路的,先处理树在处理环对于树上的情况,令\(f_{u,0/1,0/1}\)表示\(u\)子树,是否选择\(u\)为关键点,\(u\)的儿子中是否有关键点(显然的,如果有一定只有......
  • DeepSeek V3:DeepSeek 开源的最新多模态 AI 模型,编程能力超越Claude,生成速度提升至 60
    ❤️如果你也关注AI的发展现状,且对AI应用开发非常感兴趣,我会每日跟你分享最新的AI资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!......
  • 【C++动态规划】1105. 填充书架|2104
    本文涉及知识点下载及打开打包代码的方法兼述单元测试C++动态规划LeetCode1105.填充书架给定一个数组books,其中books[i]=[thicknessi,heighti]表示第i本书的厚度和高度。你也会得到一个整数shelfWidth。按顺序将这些书摆放到总宽度为shelfWidth的书架上......
  • Python编程快速上手:让繁琐工作自动化(第2版)PDF免费下载
    适读人群:本书适合任何想要通过Python学习编程的读者,尤其适合缺乏编程基础的初学者。通过阅读本书,读者将能利用非常强大的编程语言和工具,并且体会到用Python编程的快乐。Python编程从入门到实践姊妹篇,零基础自学Python教程书籍,提供配套同步教学视频、在线编程环境!针对Python3.X版......
  • 实验7 文件应用编程
    一、实验目的 知道C语言中文件处理方式,能区分文本文件和二进制文件会打开/关闭文件,能够对文件进行读/写操作能综合应用结构体,数组,函数,文件进行应用编程二、实验准备 第9章:文件的基础知识,文本文件和二进制文件,路径表示文件打开/关闭,常用的读写函数的用法 三、实验内容......
  • 12.21
    实验2  熟悉常用的HDFS操作  1.实验目的(1)理解HDFS在Hadoop体系结构中的角色;(2)熟练使用HDFS操作常用的Shell命令;(3)熟悉HDFS操作常用的JavaAPI。2.实验平台(1)操作系统:Linux(建议Ubuntu16.04或Ubuntu18.04);(2)Hadoop版本:3.1.3;(3)JDK版本:1.8;(4)JavaIDE:Eclipse。3.实验步骤(一......
  • 网络编程(Socket编程)
    IP和PORTIP的简介和分类简介IP(InternetProtocol)网络互联协议(互联网协议),是TCP/IP协议组的核心协议之一。IP和子网掩码构成了一台计算机在一个网络中的唯一识别。IP有IPv4和IPv6之分,这里重点说IPv4,IPv4的IP通常由4个十进制数字表示:xxx.xxx.xxx.xxxxxx在底层用二进制表示是一......