水到渠成分享 http://blog.sciencenet.cn/u/ZHONGHUAN2012 生活给了翠西什么, 翠西就享受什么

博文

[笔记] GPGPU-SIM微结构模型(五)

已有 6657 次阅读 2013-9-13 14:47 |个人分类:GPGPU体系结构|系统分类:科研笔记| 模型

2.6 Instruction Set Architecture (ISA)

 

2.6.1 PTX and SASS

GPGPU-Sim仿真NVIDIAParallelThread eXecution (PTX)指令集。PTX是一种伪汇编指令集;即它不能直接运行在硬件之上。PtxasNVIDIA的汇编器,将PTX汇编为可运行在硬件上本机指令集(SASS)。每一代硬件支持不同版本的SASS。出于这个原因,PTX在编译的时候可以被编译为面向不同代硬件的不同版本的SASS。尽管如此,PTX代码仍然被嵌入到库中以支持未来的硬件。在运行时,运行时系统选择合适版本的SASS运行在相应的硬件上。如果没有合适版本,则运行时系统调用just-in-timeJIT)编译器编译嵌入的PTX,将其编译为对应于相应硬件的SASS

 

2.6.2 PTXPlus

GPGPU-Sim能够运行PTX。然而,因为PTX不是运行在硬件上的实际代码,因此对于仿真的准确性有一定的限制。这主要因为编译器的pass,如strength reduction, instruction scheduling, register allocation很少涉及。

为了在GPGPU-Sim上能够运行SASS,一些新的特征需要被添加:

l  新的寻址模式

l  更加尽心设计的条件码和断言

l  额外的指令

l  额外的数据类型

为了避免开发和维护两种parser和两种功能执行引擎(一个针对PTX,另一个针对SASS),我们选择扩展PTX以提供一个到SASS的一对一映射。这种PTX的扩展称为PTXPlus。为了运行SASS,我们执行一个语法的转化从SASSPTXPlus

PTXPlus和带有新的寻址模式,精心设计的条件码和断言,额外的指令和更多数据类型的PTX相比具有相似的语法结构。可见PTXPlusPTX的一个超集,这意味着合法的PTX也是合法的PTXPlus。关于更多的PTXPTXPlus的不同可参见#PTX vs. PTXPlus

 

2.6.3 From SASS to PTXPlus

   当配置文件告知GPGPU-Sim运行SAA,一个转化工具,cuobjdump_to_ptxplus,被用来将嵌入到二进制中的SASS转化为PTXPlus。转化过程的具体细节请参照#PTXPlus Conversion。然后PTXPlus被用来进行仿真。当SASS被转化为PTXPlus,仅仅语法被改变,指令以及指令顺序和SASS保持一样。因此,编译器的优化效果被完全捕获。当前,GPGPU-Sim仅仅支持将GT200SASS转化为PTXPlus




https://blog.sciencenet.cn/blog-1067211-724614.html

上一篇:[笔记] GPGPU-SIM微结构模型(四)
下一篇:作图工具
收藏 IP: 59.67.33.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-6-8 19:37

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部