一种缓冲区对象访问方法、装置、电子设备及可读存储介质与流程

摘要: 本申请属于计算机,具体涉及一种缓冲区对象访问方法、装置、电子设备及可读存储介质。背景技术:1、在gpu(图形处理器,graphicsprocessingunit...
一种缓冲区对象访问方法、装置、电子设备及可读存储介质与流程

本申请属于计算机,具体涉及一种缓冲区对象访问方法、装置、电子设备及可读存储介质。

背景技术:

1、在gpu(图形处理器,graphics processing unit)虚拟化和仿真场景中,客户端通常将计算任务提交至服务端执行,服务端根据计算任务访问缓冲区对象,以进行计算数据的读写,因此,缓冲区对象的访问控制直接影响任务执行的稳定性和数据处理的正确性。

2、现有技术中,缓冲区对象的访问过程通常由任务调度流程进行控制,服务端按照任务开始、执行和结束的顺序控制缓冲区对象的使用状态,当缓冲区对象在同一任务的不同执行阶段被连续复用时,在前一阶段执行完成后,任务调度流程会认为任务已执行完成,从而将缓冲区对象释放;当缓冲区对象被多个任务并发访问时,在某个访问任务完成后,任务调度流程会认为该缓冲区对象已不再被使用,从而释放该缓冲区对象。

3、因此,在多阶段复用或多线程并发访问场景下,易出现缓冲区对象仍在使用却被提前释放,或缓冲区对象正在访问时被其它任务同时操作的情况,进而导致数据错误、内存访问异常或任务执行失败。

技术实现思路

1、本申请旨在提供一种缓冲区对象访问方法、装置、电子设备及可读存储介质,至少解决现有方法易出现缓冲区对象仍在使用却被提前释放,或缓冲区对象正在访问时被其它任务同时操作,进而导致数据错误、内存访问异常或任务执行失败的问题。

2、为了解决上述技术问题,本申请是这样实现的:

3、第一方面,本申请实施例提出了一种缓冲区对象访问方法,应用于具有图形处理器的服务端,包括:

4、接收客户端发送的计算请求和计算数据,所述计算请求用于请求访问缓冲区对象;

5、通过图形处理器处理所述计算请求时,将所述缓冲区对象配置为不能释放状态;并在检测到所述缓冲区对象当前处于未被访问状态时,将所述缓冲区对象配置为已被访问状态;

6、将所述计算数据写入所述缓冲区对象后,通过所述图形处理器执行计算,并将计算结果写回所述缓冲区对象,以供所述客户端后续读取;

7、将所述缓冲区对象配置为未被访问状态,并在检测到所述缓冲区对象满足释放条件时,将所述缓冲区对象配置为可释放状态。

8、第二方面,本申请实施例提出了一种缓冲区对象访问装置,包括:

9、请求接收模块,用于接收客户端发送的计算请求和计算数据,所述计算请求用于请求访问缓冲区对象;

10、状态配置模块,用于通过图形处理器处理所述计算请求时,将所述缓冲区对象配置为不能释放状态;并在检测到所述缓冲区对象当前处于未被访问状态时,将所述缓冲区对象配置为已被访问状态;

11、计算执行模块,用于将所述计算数据写入所述缓冲区对象后,通过所述图形处理器执行计算,并将计算结果写回所述缓冲区对象,以供所述客户端后续读取;

12、释放控制模块,用于将所述缓冲区对象配置为未被访问状态,并在检测到所述缓冲区对象满足释放条件时,将所述缓冲区对象配置为可释放状态。

13、在本申请的实施例中,通过在图形处理器处理所述计算请求时,将缓冲区对象配置为不可释放状态,并在访问前将其配置为正在访问状态,实现了对缓冲区对象的安全管理,使缓冲区对象在访问期间被保护,防止在多任务或多线程环境下被意外释放或被其它任务同时访问,从而避免访问冲突;通过将客户端提供的计算数据写入缓冲区对象,再通过图形处理器执行计算并将计算结果写回缓冲区对象,保证了计算过程中数据的完整性和正确性,同时保证了客户端对计算结果的安全读取;在访问完成后,缓冲区对象状态被恢复为未被访问,并在满足释放条件在进行释放,实现了对缓冲区对象的完整生命周期管理;该方法能够在复杂的多阶段计算任务和多线程操作环境下,提供可靠、可控且高效的缓冲区对象访问机制,提升了服务端执行计算任务的稳定性和安全性。

14、本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

1.一种缓冲区对象访问方法,应用于具有图形处理器的服务端,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,在所述接收客户端发送的计算请求和计算数据的步骤之前,包括:

3.根据权利要求2所述的方法,其特征在于,所述缓冲区对象包括指引信息;

4.根据权利要求1所述的方法,其特征在于,所述缓冲区对象包括引用计数;所述引用计数用于表征所述缓冲区对象能否被释放;

5.根据权利要求4所述的方法,其特征在于,所述通过原子引用计数将所述引用计数的当前值设置为第一数值,包括:

6.根据权利要求1所述的方法,其特征在于,所述缓冲区对象包括访问标志;

7.根据权利要求1所述的方法,其特征在于,所述缓冲区对象包括内存指针;

8.根据权利要求1所述的方法,其特征在于,所述通过所述图形处理器执行计算,包括:

9.根据权利要求1所述的方法,其特征在于,所述缓冲区对象包括引用计数;

10.根据权利要求9所述的方法,其特征在于,所述在检测到所述缓冲区对象满足释放条件时,将所述缓冲区对象配置为可释放状态,包括:

11.根据权利要求2所述的方法,其特征在于,所述缓冲区对象包括链表指针;

12.一种缓冲区对象访问装置,应用于具有图形处理器的服务端,其特征在于,包括:

13.一种电子设备,其特征在于,所述电子设备包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1至11中任一项所述的方法。

14.一种可读存储介质,其特征在于,当所述可读存储介质中的指令由电子设备的处理器执行时,使得所述处理器能够执行如权利要求1至11中任一项所述的方法。