当前位置: 首页 > news >正文

做视频最全的网站百度竞价开户费用

做视频最全的网站,百度竞价开户费用,绵阳房产网站建设,江苏 做网站博客补充: CUDA C 编程指南学习_c cuda编程-CSDN博客https://blog.csdn.net/qq_62704693/article/details/141225395?spm1001.2014.3001.5501NVIDIA GPU 架构是围绕可扩展的多线程流式多处理器 (SM) 阵列构建的。当主机 CPU 上的 CUDA 程序…

博客补充:

CUDA C++ 编程指南学习_c++ cuda编程-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/qq_62704693/article/details/141225395?spm=1001.2014.3001.5501NVIDIA GPU 架构是围绕可扩展的多线程流式多处理器 (SM) 阵列构建的。当主机 CPU 上的 CUDA 程序调用内核网格时,网格的块被枚举并分发到具有可用执行能力的多处理器。线程块的线程在一个多处理器上并发执行,多个线程块可以在一个多处理器上并发执行。当线程块终止时,将在空出的多处理器上启动新块。

多处理器旨在并发执行数百个线程。为了管理如此大量的线程,它采用了一种称为 SIMT单指令、多线程)的独特架构,如 SIMT 架构中所述。指令是流水线化的,利用单个线程中的指令级并行性,以及通过同步硬件多线程实现的广泛线程级并行性,如硬件多线程中所述。与 CPU 内核不同,它们是按顺序发布的,没有分支预测或推测执行。

SIMT 体系结构和硬件多线程描述了所有设备通用的流式多处理器的体系结构功能。计算能力 5.x、计算能力 6.x 和计算能力 7.x 分别提供了计算能力 5.x、6.x 和 7.x 的设备的具体信息。

NVIDIA GPU 架构使用 little-endian 表示。

4.1. SIMT 架构

多处理器以 32 个并行线程(称为 warp)为一组创建、管理、调度和执行线程。组成 warp 的各个线程从同一个程序地址一起开始,但它们有自己的指令地址、计数器和寄存器状态,因此可以自由分支和独立执行。经线一词起源于织造,这是第一种平行线技术。半 Warp 是 Warp 的前半部分或后半部分。四分之一经纱是经纱的第一、第二、第三或第四四分之一。

当一个多处理器被赋予一个或多个线程块来执行时,它会将它们划分为 warp,每个 warp 都由 warp 调度器调度执行。块被划分为 warps 的方式总是相同的;每个 warp 都包含连续的线程,线程 ID 不断增加,第一个 warp 包含线程 0。线程层次结构 描述线程 ID 与块中的线程索引的关系。

一个 warp 一次执行一条公共指令,因此当 warp 的所有 32 个线程都同意其执行路径时,就可以实现最高效率。如果 warp 的线程通过数据依赖的条件分支发散,则 warp 将执行所采用的每个分支路径,从而禁用不在该路径上的线程。分支发散仅发生在 warp 内;不同的 WARP 独立执行,无论它们是执行公共代码路径还是不相交的代码路径。

SIMT 架构类似于 SIMD (Single Instruction, Multiple Data) 向量组织,因为单个指令控制多个处理元素。一个关键区别在于,SIMD 向量组织向软件公开 SIMD 宽度,而 SIMT 指令指定单个线程的执行和分支行为。与 SIMD 向量机相比,SIMT 使程序员能够为独立的标量线程编写线程级并行代码,以及为协调线程编写数据并行代码。为了正确性,程序员基本上可以忽略 SIMT 行为;但是,通过注意代码很少要求 warp 中的线程发散,可以实现实质性的性能改进。在实践中,这类似于传统代码中 cache 行的作用: 在设计正确性时可以安全地忽略 Cache 行大小,但在设计峰值性能时必须在代码结构中考虑它。另一方面,矢量架构需要软件将负载合并为矢量并手动管理发散。

在 NVIDIA Volta 之前,warp 使用在 warp 中的所有 32 个线程之间共享的单个程序计数器,以及指定 warp 活动线程的活动掩码。因此,来自不同区域或不同执行状态的同一 warp 的线程无法相互发出信号或交换数据,并且需要精细共享由锁或互斥锁保护的数据的算法很容易导致死锁,具体取决于争用线程来自哪个 warp。

从 NVIDIA Volta 架构开始,独立线程调度允许线程之间完全并发,而不管 warp 如何。使用独立线程调度,GPU 可以维护每个线程的执行状态,包括程序计数器和调用堆栈,并且可以在每个线程的粒度上产生执行,以更好地利用执行资源或允许一个线程等待另一个线程生成数据。调度优化器确定如何将来自同一 warp 的活动线程分组到 SIMT 单元中。这保留了与以前的 NVIDIA GPU 一样 SIMT 执行的高吞吐量,但具有更大的灵活性:线程现在可以以 sub-warp 粒度发散和重新收敛。

如果开发人员对 warp-synchronicity 做出假设,则独立线程调度可能会导致一组与预期完全不同的线程参与执行的代码2以前的硬件架构。特别是,任何 warp 同步代码(例如无同步、intra-warp 减少)都应该重新审视,以确保与 NVIDIA Volta 及更高版本兼容。有关更多详细信息,请参阅 Compute Capability 7.x。

注意

参与当前指令的 warp 线程称为活动线程,而不在当前指令上的线程处于非活动状态(禁用)。线程处于非活动状态的原因有很多,包括比其 warp 的其他线程更早退出,采用的分支路径与 warp 当前执行的分支路径不同,或者是线程数不是 warp 大小的倍数的块的最后一个线程。

如果 warp 执行的非原子指令写入 warp 的多个线程的全局或共享内存中的同一位置,则对该位置发生的序列化写入次数会因设备的计算能力而异(请参阅计算能力 5.x、计算能力 6.x、 和 Compute Capability 7.x),并且哪个线程执行最终写入是不确定的。

如果 warp 执行的原子指令对 warp 的多个线程的全局内存中的同一位置进行读取、修改和写入,则对该位置的每次读取/修改/写入都会发生,并且它们都被序列化,但它们出现的顺序是不确定的。

4.2. 硬件多线程

由 multiprocessor 处理的每个 warp 的执行上下文 (程序计数器、寄存器等) 在 warp 的整个生命周期内都保留在片上。因此,从一个执行上下文切换到另一个执行上下文没有成本,并且在每个指令发出时,warp 调度器都会选择一个具有线程准备执行其下一条指令(warp 的活动线程)的 warp,并向这些线程发出指令。

特别是,每个 multiprocessor 都有一组在 warps 之间分区的 32 位 registers,以及一个在 thread blocks 之间分区的 parallel data cache 或 shared memory

对于给定内核,可以在 multiprocessor 上驻留并一起处理的 blocks 和 warp 的数量取决于 kernel 使用的 registers 和 shared memory 的数量以及 multiprocessor 上可用的 registers 和 shared memory 的数量。每个多处理器也有最大常驻块数和最大常驻 warp 数。这些限制以及 multiprocessor 上可用的 registers 和 shared memory 数量是器件计算能力的函数,在 Compute Capabilities 中给出。如果每个 multiprocessor 没有足够的 registers 或 shared memory 来处理至少一个 block,则内核将无法启动。

一个区块中的 warp 总数如下:

ceil(\frac{T}{W_{size}},1)

  • T 是每个块的线程数,

  • Wsize 是变形大小,等于 32,

  • ceil(x, y) 等于 x 向上舍入到最接近的 y 的倍数。

为块分配的寄存器总数和共享内存总量记录在 CUDA 工具包中提供的 CUDA 占用计算器中。

2

术语 warp-synchronous 是指隐式假设同一 warp 中的线程在每条指令上都同步的代码。

http://www.hengruixuexiao.com/news/19066.html

相关文章:

  • 做自己任务的网站新浪体育nba
  • 怎么添加网站权重石家庄网站优化
  • 移动网站建设服务商小学生简短小新闻
  • 755权限 wordpress中山seo推广优化
  • 电脑编程培训seo推广编辑
  • 唐山做网站哪家公司好西安做网站的网络公司
  • 不会编程怎么做网站seo关键词选取工具
  • 网站收藏的链接怎么做的萌新seo
  • 成都市建设厅网站扬州百度推广公司
  • 新疆的小网站seo优化实训报告
  • 网站是怎么优化推广的整合营销传播方案案例
  • 漳州模板网站建设教育培训机构加盟
  • 做网站挣钱吗网络营销与直播电商
  • 手机笑话网站模板如何做免费网络推广
  • 怎么做阿里巴巴网站百度自然排名优化
  • 网站seo怎样做营销推广
  • webview做网站app个人如何在百度做广告
  • 男生和男生做污的视频网站一句简短走心文案
  • 想学网站搭建与推广找资源
  • 小程序推广模式和营销方案培训seo去哪家机构最好
  • 第三方网站建设平台百度官方人工客服电话
  • 建设个人网站需要什么条件网络推广什么做
  • 汕头模板建站软件如何进行关键词分析
  • 中国核工业建设集团公司seo实战优化
  • ui设计师面试seo赚钱项目
  • 移动商城个人中心seo+网站排名
  • 网站建设发展防疫管控优化措施
  • 江门网站推广公司微信拓客的最新方法
  • 上海网站建设哪家服务好上海牛巨微seo优化
  • 重庆做个网站多少钱自媒体seo是什么意思