本发明涉及计算机,尤其涉及一种计算图销毁方法、装置、电子设备、存储介质和程序产品。
背景技术:
1、在人工智能芯片应用场景中,计算图的销毁是资源管理的重要一环。计算图作为描述计算任务依赖关系的核心数据结构,在任务执行完毕后需要进行及时销毁,以确保资源的有效回收和系统性能的稳定。
2、在现有技术中,人工智能芯片软件驱动的主线程在计算图销毁方面通常采用在每次执行计算图时尝试清理已经执行完的计算图后再进行计算图执行,或者在需要销毁计算图的情况下,需要强制持续等待计算图执行完后再进行计算图的销毁以及其他计算图的处理,导致计算图管理效率较低。
技术实现思路
1、本发明提供一种计算图销毁方法、装置、电子设备、存储介质和程序产品,用以解决计算图管理效率较低的缺陷,实现提高计算图的管理效率和人工智能芯片的系统稳定性。
2、本发明提供一种计算图销毁方法,包括:
3、根据计算图销毁指令,获取待销毁计算图的共享指针;
4、将所述待销毁计算图的共享指针,从第一容器中移除,并监测所述待销毁计算图的执行状态;
5、在所述待销毁计算图的执行状态为未执行完成的情况下,将所述待销毁计算图的清理操作延迟至下一次计算图启动;
6、通过清理线程异步执行所述清理操作,并在根据清理操作结果判断获知所述待销毁计算图的共享指针从第二容器中成功移除的情况下,确定所述待销毁计算图销毁完成;所述清理操作用于将所述待销毁计算图的共享指针,从所述第二容器中移除;
7、其中,所述第一容器用于存储人工智能芯片中已创建的计算图的共享指针,所述第二容器用于存储所述人工智能芯片中已启动的计算图的共享指针。
8、根据本发明提供的一种计算图销毁方法,所述通过清理线程异步执行所述清理操作,包括:
9、在接收到下一次计算图的启动指令的情况下,执行下一次计算图的启动操作;
10、在根据启动操作结果,确定下一次计算图启动时,调用常驻线程,向所述清理线程发送清理已执行完成的计算图的通知,以供所述清理线程在接收到所述通知的情况下,异步执行所述清理操作。
11、根据本发明提供的一种计算图销毁方法,所述调用常驻线程,包括:
12、判断下一次启动的计算图是否为所述下一次启动的计算图所属的处理流中第一次启动的计算图;
13、若是第一次启动的计算图,则构建所述常驻线程;
14、若不是第一次启动的计算图,则在线程池中调用所述下一次启动的计算图所属的处理流的常驻线程。
15、根据本发明提供的一种计算图销毁方法,在所述监测所述待销毁计算图的执行状态之后,所述方法还包括:
16、在所述待销毁计算图的执行状态为执行完成的情况下,在所述第二容器中查找所述待销毁计算图的共享指针;
17、在查找到所述待销毁计算图的共享指针的情况下,通过所述清理线程异步执行所述清理操作。
18、根据本发明提供的一种计算图销毁方法,所述方法还包括:
19、在根据所述清理操作结果判断获知所述待销毁计算图的共享指针未从第二容器中成功移除的情况下,确定所述待销毁计算图销毁未完成;
20、继续监测所述待销毁计算图的执行状态,在执行状态为未执行完成的情况下,迭代执行所述清理操作的延迟执行步骤,直到根据清理操作结果判断获知所述待销毁计算图的共享指针从所述第二容器中成功移除。
21、根据本发明提供的一种计算图销毁方法,所述计算图销毁指令的获取步骤包括以下至少一种:
22、接收计算图销毁请求,对所述计算图销毁请求进行解析,得到所述计算图销毁指令;
23、在所述人工智能芯片的驱动程序退出的情况下,生成所述计算图销毁指令;
24、其中,所述计算图销毁请求是在所述待销毁计算图启动后生成的进行计算图销毁的请求。
25、本发明还提供一种计算图销毁装置,包括:
26、获取单元,用于根据计算图销毁指令,获取待销毁计算图的共享指针;
27、第一清理单元,用于将所述待销毁计算图的共享指针,从第一容器中移除,并监测所述待销毁计算图的执行状态;
28、处理单元,用于在所述待销毁计算图的执行状态为未执行完成的情况下,将所述待销毁计算图的清理操作延迟至下一次计算图启动;
29、第二清理单元,用于通过清理线程异步执行所述清理操作,并在根据清理操作结果判断获知所述待销毁计算图的共享指针从第二容器中成功移除的情况下,确定所述待销毁计算图销毁完成;所述清理操作用于将所述待销毁计算图的共享指针,从所述第二容器中移除;
30、其中,所述第一容器用于存储人工智能芯片中已创建的计算图的共享指针,所述第二容器用于存储所述人工智能芯片中已启动的计算图的共享指针。
31、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述计算图销毁方法。
32、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述计算图销毁方法。
33、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述计算图销毁方法。
34、本发明提供的计算图销毁方法、装置、电子设备、存储介质和程序产品,通过在进行计算图销毁时,仅将待销毁计算图的共享指针,从第一容器中移除,并监测待销毁计算图的执行状态,如果待销毁计算图的执行状态为未执行完成的情况下,则不会立即销毁,而是将待销毁计算图的清理操作延迟至下一次计算图启动,若待销毁计算图执行完成之后,则由清理线程异步将待销毁计算图的共享指针,从第二容器中移除,以实现计算图的异步延迟销毁,使得在将待销毁计算图的共享指针从第二容器中移除的过程中,主线程可异步执行其他计算图的处理,以有效减少主线程在同步执行过程中频繁等待计算图销毁所需的时间,以及强制持续等待计算图执行完成所需的时间,且通过监测计算图的执行状态来确保只有在计算图真正执行完毕后才进行销毁,由此提高计算图的管理效率和计算图管理器的系统稳定性。
1.一种计算图销毁方法,其特征在于,包括:
2.根据权利要求1所述的计算图销毁方法,其特征在于,所述通过清理线程异步执行所述清理操作,包括:
3.根据权利要求2所述的计算图销毁方法,其特征在于,所述调用常驻线程,包括:
4.根据权利要求1-3任一项所述的计算图销毁方法,其特征在于,在所述监测所述待销毁计算图的执行状态之后,所述方法还包括:
5.根据权利要求1-3任一项所述的计算图销毁方法,其特征在于,所述方法还包括:
6.根据权利要求1-3任一项所述的计算图销毁方法,其特征在于,所述计算图销毁指令的获取步骤包括以下至少一种:
7.一种计算图销毁装置,其特征在于,包括:
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述计算图销毁方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述计算图销毁方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述计算图销毁方法。
