本申请提供一种加速结构的存储和读取方法、存储装置及图形处理器,涉及图形处理领域。加速结构的存储方法包括:获取预设加速结构,所述预设加速结构包括多个结点;将所有所述结点分别与预设字节单位对齐,得到对齐后的加速结构,所述预设字节单位为读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数;将所述对齐后的加速结构存入所述读取设备。通过对加速结构的结点与预设字节单位进行对齐,可以使得读取设备能够准确地对加速结构进行读取,提高读取设备的读取效率。取设备的读取效率。取设备的读取效率。
【技术实现步骤摘要】
加速结构的存储和读取方法、存储装置及图形处理器
[0001]本申请涉及图形处理领域,具体而言,涉及加速结构的存储和读取方法、存储装置及图形处理器,电子设备及计算机可读存储介质。
技术介绍
[0002]光线追踪算法具有加速结构,该加速结构为树形结构形式的BVH(bounding volume hierarchy,层次包围盒)结构,BVH结构包括多个结点。其中,光线追踪算法可以用于图像渲染,在GPU(Graphics processing unit,图形处理器)上使用光线追踪算法时,需将加速结构存储到GPU的显存中。
[0003]目前,为减少加速结构对GPU显存的占用,通常会使用紧凑的数据存储形式对加速结构进行存储,即将加速结构的各数据之间前后相接,BVH的每个结点之间均无空隙。
[0004]然而,GPU对显存中的数据以一个显存段进行读写,若显存内存储的数据分别存储在不同的显存段中,则GPU需重新读取,而紧凑存储的加速结构结点的访问地址可能不为读写单位的倍数且紧凑存储时,则可能出现GPU对访问地址读取错误,需重新读写该结点,重复读取会影响GPU的性能。
技术实现思路
[0005]有鉴于此,本申请旨在提供一种加速结构的存储和读取方法、存储装置,图形处理器,一种电子设备及计算机可读存储介质,以提高读取设备对加速结构的读取效率。
[0006]第一方面,本申请实施例提供一种加速结构的存储方法,包括:获取预设加速结构,所述预设加速结构包括多个结点;将所有所述结点分别与预设字节单位对齐,得到对齐后的加速结构,所述预设字节单位为读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数;将所述对齐后的加速结构存入所述读取设备。
[0007]本申请实施例中,预设字节单位为读取设备对数据进行读取的字节单位,将加速结构的各结点与预设字节单位对齐,并将对齐后的加速结构存入读取设备之后,读取设备可以依据自身对数据进行读取的字节单位实现对加速结构中各结点准确地读取,有效减少读取错误、重复读取等情况发生,从而提高读取设备对加速结构的读取效率,进而提高读取设备的性能。
[0008]一实施例中,所述将所有所述结点分别与预设字节单位对齐,包括:在确定所述结点的访问地址不为所述预设字节单位的倍数时,在所述访问地址的尾部填充非地址数据,以使所述访问地址的字节数等于所述预设字节单位的倍数。
[0009]本申请实施例中,在访问地址的尾部填充非地址数据,可以避免填充的数据对确定访问地址的起始位置造成影响,也同时避免填充的数据对访问地址的实际内容造成影响,从而确保读取设备能够对结点进行准确读取的前提下,提高读取设备对加速结构的读取效率。
[0010]一实施例中,所述非地址数据为无效数据。
[0011]本申请实施例中,无效数据为无任何表征意义的数据,在对齐时,可以根据实际需求填充相应字节长度的无效数据,在对齐时无需对访问地址的长度与所填充的非地址数据之间进行过多计算与调整,有效简化对齐过程。
[0012]一实施例中,所述读取设备为图形处理器,所述预设字节单位为所述图形处理器对显存中数据进行读写的字节单位。
[0013]本申请实施例中,可以将加速结构按图形处理器对显存中数据进行读写的字节单位进行对齐,由此,对齐后的加速结构可以存入图形处理器中,从而提高图形处理器对加速结构的读取效率,进而提高图像处理器的性能。
[0014]第二方面,本申请实施例提供一种加速结构的读取方法,应用于读取设备,所述加速结构的读取方法包括:基于预设的编译期常量对加速结构进行读取,所述编译期常量为对所述加速结构的结点进行访问时所述结点的访问坐标的偏移量,且所述偏移量为常量;其中,所述加速结构具有多个结点,所有所述结点分别与预设字节单位对齐,所述预设字节单位为所述读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数。
[0015]本申请实施例中,由于加速结构已经对齐,因此,读取设备在读取对齐后的加速结构时,可以基于编译期常量偏移对加速结构进行读取,相较于使用编译期变量构成的结点的访问地址,每个结点的编译期常量均相同,且无需分别计算每一结点的访问地址,由此,可以有效简化读取设备对加速结构中各结点进行读取的过程,减少运算,从而提高读取设备对加速结构的读取效率。
[0016]一实施例中,所述基于预设的编译期常量对加速结构进行读取,包括:基于预设坐标访问地址、所述编译期常量建立对所述结点的坐标访问地址;基于所述坐标访问地址对所述结点进行访问,以对所述加速结构进行读取。
[0017]本申请实施例中,由于对齐后的加速结构在被读取设备读取时,读取设备可以依据自身对数据读取的字节单位实现对加速结构地准确读取,读取设备对加速结构中每一结点访问地址坐标的偏移量可以相同,因此,可以预先使用编译期常量和预设坐标访问地址建立对结点的坐标访问地址,读取设备每次对结点进行读取时,可以依据坐标访问地址对结点进行访问读取,使得对结点的访问无需每次计算复杂的坐标访问地址,从而读取设备对加速结构的读取效率。
[0018]第三方面,本申请实施例提供一种加速结构的存储装置,包括:获取模块,用于获取预设加速结构,所述预设加速结构包括多个结点;处理模块,用于将所有所述结点分别与预设字节单位对齐,得到对齐后的加速结构,所述预设字节单位为读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数;存储模块,用于将所述对齐后的加速结构存入所述读取设备。
[0019]第四方面,本申请实施例提供一种图形处理器,包括:光线追踪单元,包括加速结构,所述加速结构具有多个结点,所有所述结点访问地址分别为图形处理器对显存中数据进行读取的字节单位的倍数;读取模块,用于执行如第二方面所述的加速结构的读取方法。
[0020]第五方面,本申请实施例提供一种电子设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行
如第一方面任一项所述的方法。
[0021]第六方面,本申请实施例提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如第一方面所述的加速结构的读取方法。
[0022]本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
[0023]为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举本专利技术较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0024]为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种加速结构的存储方法,其特征在于,包括:获取预设加速结构,所述预设加速结构包括多个结点;将所有所述结点分别与预设字节单位对齐,得到对齐后的加速结构,所述预设字节单位为读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数;将所述对齐后的加速结构存入所述读取设备。2.根据权利要求1所述的方法,其特征在于,所述将所有所述结点分别与预设字节单位对齐,包括:在确定所述结点的访问地址不为所述预设字节单位的倍数时,在所述访问地址的尾部填充非地址数据,以使所述访问地址的字节数等于所述预设字节单位的倍数。3.根据权利要求2所述的方法,其特征在于,所述非地址数据为无效数据。4.根据权利要求1所述的方法,其特征在于,所述读取设备为图形处理器,所述预设字节单位为所述图形处理器对显存中数据进行读写的字节单位。5.一种加速结构的读取方法,其特征在于,应用于读取设备,所述加速结构的读取方法包括:基于预设的编译期常量对加速结构进行读取,所述编译期常量为预设的对所述加速结构的结点进行访问时所述结点的访问坐标的偏移量,且所述偏移量为常量;其中,所述加速结构具有多个结点,所有所述结点分别与预设字节单位对齐,所述预设字节单位为所述读取设备对数据进行读取的字节单位,所述对齐用于使所述结点的访问地址为所述预设字节单位的倍数。6.根据权利要求5所述的方法,其特征在...
【专利技术属性】
技术研发人员:施泽丰,
申请(专利权)人:芯原微电子成都有限公司芯原微电子南京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。