System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及分布式计算,尤其涉及一种数据跨设备迁移方法、设备、存储介质及程序产品。
技术介绍
1、随着计算任务的复杂性和数据量的不断增加,分布式计算和异构计算环境中的模型与计算任务需要在不同的硬件设备之前迁移。在这些环境中,不同的硬件设备(如cpu(central processing unit,中央处理器)、gpu(graphics processing unit,图形处理器)、npu(neural network processing unit,神经网网络单元)等)被广泛应用于加速各种计算密集型任务,包括但不限于深度学习训练、图像处理以及科学计算等领域。然而,不同类型的硬件设备在架构设计、内存管理机制、指令集支持及加速库等方面存在显著差异,直接进行数据迁移可能导致迁移过程效率低的问题。
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、数据模块,用于确定源设备中进行数据迁移的第一数据;
35、转换模块,用于获取目标设备的硬件特性信息,根据所述硬件特性信息对所述第一数据进行适配转换,得到适配后的第二数据;
36、分类模块,用于将所述第二数据分为静态数据和动态数据;
37、传输模块,用于将所述源设备和所述目标设备的内存地址映射至共享虚拟地址,将所述动态数据传输到所述目标设备;
38、接收模块,用于确定所述目标设备对所述共享虚拟地址进行访问得到的所述静态数据以及接收到的所述动态数据,并确定所述静态数据和所述动态数据是否适配所述目标设备;
39、执行模块,用于若确定所述静态数据和所述动态数据适配所述目标设备,则控制所述目标设备执行所述静态数据和所述动态数据对应的计算任务。
40、此外,为实现上述目的,本申请还提出一种数据跨设备迁移设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如上文所述的数据跨设备迁移方法的步骤。
41、此外,为实现上述目的,本申请还提出一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实本文档来自技高网...
【技术保护点】
1.一种数据跨设备迁移方法,其特征在于,所述数据跨设备迁移方法包括:
2.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述根据所述硬件特性信息对所述第一数据进行适配转换,得到适配后的第二数据的步骤,包括:
3.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述根据所述目标数据布局结构对所述第三数据进行数据重组,得到目标数据布局结构的第二数据的步骤,包括:
4.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述确定所述静态数据和所述动态数据是否适配所述目标设备的步骤,包括:
5.如权利要求4所述的数据跨设备迁移方法,其特征在于,所述确定所述静态数据和所述动态数据是否适配所述目标设备的步骤之前,还包括:
6.如权利要求5所述的数据跨设备迁移方法,其特征在于,所述对所有所述上下文信息进行更新的步骤之后,还包括:
7.如权利要求6所述的数据跨设备迁移方法,其特征在于,所述将各所述操作节点的上下文信息转换为与所述目标设备适配的硬件指令的步骤之后,还包括:
8.一种数据跨设备迁移设备,其特征在于
9.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据跨设备迁移方法的步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至中任一项所述的数据跨设备迁移方法的步骤。
...【技术特征摘要】
1.一种数据跨设备迁移方法,其特征在于,所述数据跨设备迁移方法包括:
2.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述根据所述硬件特性信息对所述第一数据进行适配转换,得到适配后的第二数据的步骤,包括:
3.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述根据所述目标数据布局结构对所述第三数据进行数据重组,得到目标数据布局结构的第二数据的步骤,包括:
4.如权利要求1所述的数据跨设备迁移方法,其特征在于,所述确定所述静态数据和所述动态数据是否适配所述目标设备的步骤,包括:
5.如权利要求4所述的数据跨设备迁移方法,其特征在于,所述确定所述静态数据和所述动态数据是否适配所述目标设备的步骤之前,还包括:
6.如权利要求5所述的数据跨设备迁移方法,其特征在于,所述对所有所述上下文信息进行更...
【专利技术属性】
技术研发人员:卢伟超,
申请(专利权)人:深圳开鸿数字产业发展有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。