CN119477664A 一种用于gpu的寄存器资源管理方法、设备及介质 (山东浪潮科学研究院有限公司)_第1页
CN119477664A 一种用于gpu的寄存器资源管理方法、设备及介质 (山东浪潮科学研究院有限公司)_第2页
CN119477664A 一种用于gpu的寄存器资源管理方法、设备及介质 (山东浪潮科学研究院有限公司)_第3页
CN119477664A 一种用于gpu的寄存器资源管理方法、设备及介质 (山东浪潮科学研究院有限公司)_第4页
CN119477664A 一种用于gpu的寄存器资源管理方法、设备及介质 (山东浪潮科学研究院有限公司)_第5页
已阅读5页,还剩25页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种用于GPU的寄存器资源管理方法、设备本申请提供了一种用于GPU的寄存器资源管件,向GPU设备申请实际计算任务对应的第一内及第二可执行文件;第二可执行文件用于GPU设备基于计算参数及预设寄存器执行实际计算任务;根据计算参数在第一内存空间中的内存地射二叉树的根节点指针写入GPU设备的GPU初始化参数结构体,得到相应的GPU初始化参数;将2所述GPU设备基于所述计算参数及预设寄存器执行所根据所述计算参数在所述第一内存空间中的内存地址,生成计算参将所述GPU设备存储所述GPU初始化参数的内存首地址,写入所述预2.根据权利要求1所述的一种用于GPU的寄存器通过所述第一可执行文件,确定所述实际计算任务对应的各计算根据所述计算参数的参数数量、所述第二可执行文件,生成申请内基于预先编译的第一可执行文件,向GPU设备申请实际计算任务对应的第一内存空间将所述源操作数据及所述第二可执行文件,存储至所述第一内3.根据权利要求1所述的一种用于GPU的数映射二叉树的根节点指针写入所述GPU设备的GPU初始化参数结构体,得到相应的GPU初将所述计算参数在所述第一内存空间中的各所述内存地址,将所述计算参数映射二叉树的所述根节点指针写入所述GPU初始化参数结构体的预设将所述GPU初始化参数写入所述第二内存空间,并获取所述第二内存空间的所述内存36.根据权利要求2所述的一种用于GPU的寄存器确定所述第一内存空间中所述源操作数据及所述第二可执行文件分别对应的内存地将所述第一内存空间中所述目的操作数据对应的内存地址,按照基于程序的空间局部性原理及所述第一链表中所述第二可执行将所述第二链表中所述目的操作数据的内存地址,作为右子树节点7.根据权利要求6所述的一种用于GPU的寄存器基于所述程序的空间局部性原理,确定所述第一链表中所述确定所述第一链表中,与所述第二可执行文件的内存地址的存确定所述第一链表中与所述根节点数据的所述存储地址距离最所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被理器执行,以使所述至少一个处理器能够执行如上述权利要求1_8任一项所述的一种用于4机可执行指令能够执行如上述权利要求1_8任一项所述的一种用于GPU的寄存器资源管理5[0002]随着计算需求的不断提升,GPU凭借利用大量的线程来提高运算的并行度这一特[0005]本申请实施例提供了一种用于GPU的寄存器资源管理方法、设备及介质,用于在基于预先编译的第一可执行文件,向GPU设备申请实际计算任务对应的第一内存件用于所述GPU设备基于所述计算参数及预设寄存器执行根据所述计算参数在所述第一内存空间中的内存地址,生成计算参数映射二叉树,并将所述计算参数映射二叉树的根节点指针写入所述GPU设备的GPU初始化参数结构6基于预先编译的第一可执行文件,向GPU设备申请实际计算任务对应的第一内存将所述计算参数映射二叉树的所述根节点指针写入所述GPU初始化参数结构体的将所述GPU初始化参数写入所述第二内存空间,并获取所述第二内存空间的所述所述GPU设备通过预先编写的启动程序文件,读取所述预设寄存器中预先存储的确定所述第一内存空间中所述源操作数据及所述第二可执行文件分别对应的内7储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述所述的一种用于GPU的寄存可执行指令,所述计算机可执行指令能够执行如上述所述的一种用于GPU的寄存器资源管8图2为本申请实施例中一种用于GPU的寄存器资源管理方法对应的一种系统结构图3为本申请实施例中一种用于GPU的寄存器资源管理方法中的GPU内存的一种示图4为本申请实施例中一种用于GPU的寄存器资源管理方法中的一种第二链表的图5为本申请实施例中一种用于GPU的寄存器资源管理方法中的一种计算参数映图6为本申请实施例中一种用于GPU的寄存器资源管理方法中的可执行文件的程[0020]异构编程模型将可执行程序分为设备端(GPU)程序和主机端程序,主机端为中央(ComputeUnifiedDeviceArchitecture,CUDA)、开放运算语言(OpenComputing待处理的数据及设备端执行的bin文件写入申请到的设备端内存中;然后将申请到的各个参数的在设备端内存中的地址和数据长度等参数写入GPU寄存器中,每个线程根据传入寄需要占用大量的寄存器资源。[0021]本申请实施例提供了一种用于GPU的寄存器资源管理方法、设备及介质,用来在[0023]本申请实施例提供了一种用于GPU的寄存器资源管理方法,应用于包含GPU和CPU行文件用于GPU设备基于计算参数及预设寄存器执行[0026]第一可执行文件是使用针对CPU主机端的编译器,编译主机端程序生成。在需要9第一可执行文件时,将进行GPU参数配置。CPU可以使用GPU驱动程序应用程序编程接口PCIe总线连接。通过第一可执行文件,确定实际计算任务对应的各计算参数及第二可执行文件。[0028]换言之,CPU可以确定实际计算任务所涉及的计算参数,计算参数包含源操作数将计算参数映射二叉树的根节点指针写入GPU设备的GPU初始化参数结构体,得到相应的映射二叉树,并将计算参数映射二叉树的根节点指针写入GPU设备的GPU初始化参数结构类型和参数数量与二叉树节点的对应关系列表,如参数类型为源操作数据的为左子树节中剩余的源操作数据,与addr_src_7的存储地址距离最小的内存地址,如第一链表中的的存储地址距离最小的内存地址……直至第一链表中为空,得到二叉树的根节点及左子初始化参数写入到0x9002_4000位置,并将0x9002_4000写入到gpu_args寄存器中。其中,运行后,GPU核函数的汇编启动程序执行期间能够通过GPU初始化参数存储空间的基地址,写入源操作数和设备端bin文件数据;S602,将申请得到的所有计算参数的设备端内存地基于预先编译的第一可执行文件,向GPU设备申请实际计算任务对应的第一内存[0057]本申请实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指基于预先编译的第一可执行文件,向GPU设备申请实际计算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论