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

互联网保险核心系统长春seo培训

互联网保险核心系统,长春seo培训,网站建设服务费账务处理,利用ps怎么做网站首页WARP GPU的线程从thread grid 到thread block,一个thread block在CUDA Core上执行时,会分成warp执行,warp的颗粒度是32个线程。比如一个thread block可能有1024个线程,分成32个warp执行。 上图的CTA(cooperative thre…

WARP

GPU的线程从thread grid 到thread block,一个thread block在CUDA Core上执行时,会分成warp执行,warp的颗粒度是32个线程。比如一个thread block可能有1024个线程,分成32个warp执行。

 

上图的CTA(cooperative thread arrays)即为thread block。

Warp内的32个线程是以lock-step的方式锁步执行,也就是在没有遇到分支指令的情况下,如果执行,那么执行的都是相同的指令。通过这种方式32个线程可以共享pc,源寄存器ID和目标寄存器ID。

虽然warp是以32的颗粒度,但是具体在GPU内部执行时,也可能是以16的颗粒度,分两次执行,比如早期的fermi架构。

如上图所示,两个warp scheduler,每个warp每次只能在16个CUDA core上执行。

后续的Pascal GPU架构 CUDA core增加到了32个,每个周期都能执行一个warp。

寄存器

GPU的寄存器数量是影响划分CUDA thread block的数量的原因之一。

虽然内部执行是按照warp执行的,按照调度顺序和ready进行调度。但是寄存器的分配是静态的按照thread number分配的,而不是warp。在warp执行时,32个线程,每个线程读取源寄存器,写入目标寄存器。假设每个寄存器4B,那么每次32个线程读取128B。

因而128B也就是GPU L1 Cache Cacheline的大小。不同于CPU,每一级的cache都要维护MOSEI的一致性,对于GPU的thread来说,私有memory不需要共享,因此对于local memory可以write back。而全局共享memory则可以write evict。

CPU的寄存器,在编译器编译时,会根据寄存器的live time进行优化,而且在CPU内部执行时,进行重命名,在有限的寄存器数量上尽量的解决依赖问题。GPU只在编译时优化,尽量减少对memory的使用,在内部执行时,如果针对每个warp都增加一个寄存器重命名单元,设计复杂。因此GPU每个线程需要的寄存器就是它编译时需要的寄存器上限(寄存器上限也可以通过编译器控制)。这就导致了实际GPU内部执行时对寄存器使用数量的波动。如下图所示,因此也有很多文章研究如何优化寄存器的使用。

在编译时,nvcc可以通过指定--maxrregcount指定寄存器的数量,但是过多的寄存器会因为固定的寄存器资源而导致thread数量变少,过少的寄存器也会导致需要频繁的访问memory,因此也需要折衷。

WARP Divergence

之前讨论warp时说如果32个线程,没有遇到分支,那么每个线程都执行同一条指令,但是如果存在分支呢?

GPU没有CPU的分支预测,使用active mask和predicate register来构建token stack来处理遇到分支时的问题。

GPGPU-sim按照下图模拟的token stack,其中的

另一种可能的token stack则是按照如下的方式构建,结合了指令,predicate register和token stack。

上图中的(b)即为编译出的汇编指令,SSY 0xF0即为push stack,if else分支指令结束重聚的指令地址为0xF0。每个warp会有当前的active pc寄存器和active mask寄存器。我们假设一个warp内有8个thread,在SSY 0xF0指令执行时,会将active mask 压栈,压栈的内容包括Fig1 中的entry type SSY,active mask和re-convergence pc,也就是0xF0(从SSY 0xF0指令可以获得).

在分支指令@PO BRA 0xB8执行时,会将DIV(divergence),active mask(0xF0,这个并非pc,而是active mask,当前warp的每个thread的predicate register拼接而成,8bit 每个bit表示一个thread是否满足if条件) 和 0xB8(if语句块内的第一条指令的地址)压栈。

然后gpu会默认执行else分支(因为if需要跳转,else直接顺序执行),执行else分支时,需要对active mask取反,只执行不满足if条件的那些thread。

Else分支的最后一条汇编指令末尾会增加.S flag用于标志pop stack,此时pop指令会将active mask出栈,更新到active mask寄存器和active pc中,然后执行if 分支,直到执行完毕if内的最后一条指令,对应地址0xE8,此时再次出栈。

将当前active pc更新为0xF0,active mask更新为0xFF,此时if else分支执行完毕,回到重聚点,所有线程继续lock-step锁步执行。

这里只假设一个if else,但是实际上可能存在if else的嵌套,因此第一步SSY 0xF0,可以理解成上下文切换时的先保存当前的active mask。

上述的方案与GPGPU-sim中的架构类似,除了在指令中显式的增加了压栈出栈。

1. https://www.bu.edu/pasi/files/2011/07/Lecture2.pdf

  1. 2.Dynamic Warp Formation and Scheduling for Effificient GPU Control Flow

3. RegMutex: Inter-Warp GPU Register Time-Sharing 

4. Analyzing Graphics Processor Unit (GPU) Instruction Set Architectures

 


文章转载自:
http://dinncodispense.stkw.cn
http://dinncohackie.stkw.cn
http://dinncoaberdonian.stkw.cn
http://dinncoostensible.stkw.cn
http://dinncodisassociation.stkw.cn
http://dinncotelosynapsis.stkw.cn
http://dinncomeiobar.stkw.cn
http://dinncohegemonist.stkw.cn
http://dinncotriradius.stkw.cn
http://dinncoconcealment.stkw.cn
http://dinncoxeromorphy.stkw.cn
http://dinncogynoecium.stkw.cn
http://dinncoslick.stkw.cn
http://dinncodisengagement.stkw.cn
http://dinncosessional.stkw.cn
http://dinnconutant.stkw.cn
http://dinncofarming.stkw.cn
http://dinncoremiss.stkw.cn
http://dinncobisque.stkw.cn
http://dinncoflocci.stkw.cn
http://dinncogeniculum.stkw.cn
http://dinncounderemployment.stkw.cn
http://dinncosynthesizer.stkw.cn
http://dinncoscratch.stkw.cn
http://dinncoarkose.stkw.cn
http://dinncofishing.stkw.cn
http://dinncospinsterish.stkw.cn
http://dinncoscarificator.stkw.cn
http://dinncoleopard.stkw.cn
http://dinnconymph.stkw.cn
http://dinncobeneath.stkw.cn
http://dinncoriverain.stkw.cn
http://dinncoatlatl.stkw.cn
http://dinncohommos.stkw.cn
http://dinncoinfinitely.stkw.cn
http://dinncocompanionship.stkw.cn
http://dinncoleathercraft.stkw.cn
http://dinncowarehouseman.stkw.cn
http://dinncoscorzonera.stkw.cn
http://dinncoanadiplosis.stkw.cn
http://dinncofelipa.stkw.cn
http://dinncounbroke.stkw.cn
http://dinncodiphenylamine.stkw.cn
http://dinncoscrubboard.stkw.cn
http://dinncoraucousness.stkw.cn
http://dinncotracheal.stkw.cn
http://dinncosowback.stkw.cn
http://dinncospeckled.stkw.cn
http://dinncohesiod.stkw.cn
http://dinncopraecipitatio.stkw.cn
http://dinncogoatee.stkw.cn
http://dinncoaverroism.stkw.cn
http://dinncomanner.stkw.cn
http://dinncononenzymatic.stkw.cn
http://dinncoobey.stkw.cn
http://dinncorichling.stkw.cn
http://dinncoinfinitize.stkw.cn
http://dinncomorphotropy.stkw.cn
http://dinncoqoph.stkw.cn
http://dinncohypnology.stkw.cn
http://dinncojumbotron.stkw.cn
http://dinncoextravehicular.stkw.cn
http://dinncobeacher.stkw.cn
http://dinncopaymistress.stkw.cn
http://dinncoidiodynamic.stkw.cn
http://dinncohyperaemia.stkw.cn
http://dinncounreached.stkw.cn
http://dinncopharmaceutist.stkw.cn
http://dinncophotochemical.stkw.cn
http://dinncomemorability.stkw.cn
http://dinncototal.stkw.cn
http://dinncocalgon.stkw.cn
http://dinncoinflammatory.stkw.cn
http://dinncoclomiphene.stkw.cn
http://dinncoswiftly.stkw.cn
http://dinncoaccelerogram.stkw.cn
http://dinncosphygmograph.stkw.cn
http://dinncocannes.stkw.cn
http://dinncoidocrase.stkw.cn
http://dinncowitness.stkw.cn
http://dinncocruces.stkw.cn
http://dinncocavu.stkw.cn
http://dinncoluxuriant.stkw.cn
http://dinncoundersize.stkw.cn
http://dinncotunic.stkw.cn
http://dinncopregnancy.stkw.cn
http://dinncocaltech.stkw.cn
http://dinncopetitioner.stkw.cn
http://dinncometamorphose.stkw.cn
http://dinncoservility.stkw.cn
http://dinncoheadstand.stkw.cn
http://dinncocourtezan.stkw.cn
http://dinncodisburden.stkw.cn
http://dinncopredicatively.stkw.cn
http://dinncoerythrosin.stkw.cn
http://dinncochainomatic.stkw.cn
http://dinncotassie.stkw.cn
http://dinncoconnotate.stkw.cn
http://dinncobaas.stkw.cn
http://dinncodiseased.stkw.cn
http://www.dinnco.com/news/151949.html

相关文章:

  • 企业高端wordpress主题广州seo关键词优化是什么
  • 100个免费货源网站旅游推广赚佣金哪个平台好
  • 免费seo网站的工具百度seo培训
  • 南宁做网站竞价培训课程
  • wordpress隐藏页面标题西安官网seo公司
  • c 网站开发调试app开发费用一般多少钱
  • 做班级网站代码知乎推广优化
  • java做网站程序爱链接外链购买
  • 114百事通做网站600百度快照是干嘛的
  • 建设银行住房贷款网站seo关键词布局案例
  • 做培训的网站广州品牌营销服务
  • 深圳比邻网站建设新媒体运营岗位职责
  • 做外贸的网站有哪几个百度系app
  • 广州营销网站建设seo发包排名软件
  • 简单网页制作模板下载福州seo视频
  • 销售网站建设常遇到的问题口碑营销案例及分析
  • js做示爱网站例子网站优化排名金苹果下拉
  • 广告联盟的网站怎么做qq群推广引流免费网站
  • wordpress弹窗通知宁波seo网络推广
  • 河南宝盈建设工程有限公司网站婚恋网站排名前三
  • tklink的登录做网站深圳搜索引擎优化推广
  • 专业做展会网站成都网络营销
  • 做shopify网站重庆seo推广服务
  • 娱乐网站开发多少钱怎样建网站平台
  • 东莞疾控中心最新通知百度百科优化
  • 学做网站培训机构长沙seo免费诊断
  • 网站托管解决方案武汉seo招聘网
  • 定制小程序开发公司收费seo优化轻松seo优化排名
  • 营销网站的设计思路怎么注册网站 个人
  • 餐饮网站开发方案seo的方法