Ascend print数据落盘使用

mindspore的Print算子有两种模式,一种是直接打屏,还有一种是数据落盘,保存到二进制文件中

默认打印在屏幕上。也可以保存在文件中,通过context设置print_file_path参数。

一旦设置,输出将保存在指定文件中。通过函数 mindspore.parse_print() 可以重新加载数据。

而且print_file_path只在Ascend上设置生效

1. 保存print的数据到文件中

关键的代码为:

ini 复制代码
context.set_context(print_file_path=print_file)
python 复制代码
from mindspore import nn  
from mindspore.ops import operations as ops  
from mindspore import Tensor  
import numpy as np  
from mindspore import context  
from mindspore.train.serialization import parse_print  
print_file = "kkkk.log"  
context.set_context(print_file_path=print_file)  
    
class PrintDemo(nn.Cell):  
    def __init__(self):  
        super(PrintDemo, self).__init__()  
        self.print = ops.Print()  
    
    def construct(self, x, y):  
        self.print('Print Tensor x and Tensor y:', x, y)  
        return x  
    
x = Tensor(np.ones([2, 1]).astype(np.int32))  
y = Tensor(np.ones([2, 2]).astype(np.int32))  
net = PrintDemo()  
result = net(x, y)  

2. 通过parse_print接口,读取保存的数据

关键代码为:

ini 复制代码
file = parse_print(print_file)
python 复制代码
from mindspore import nn  
from mindspore.ops import operations as ops  
from mindspore import Tensor  
import numpy as np  
from mindspore import context  
from mindspore.train.serialization import parse_print  
print_file = "kkkk.log"  
    
file = parse_print(print_file)  
    
print("kkkk0", file[0])  
print("kkkk1", file[1])  
print("kkkk2", file[2])  

两个不能放在同一个文件中执行,若是放在一个文件中执行,读取的时候会报错,说没有数据

保存的文件是下面这样的:

cke_96470.png560×145 5.38 KB

可以从代码中看到,保存的有三个数据,一个字符串,两个Tensor

打印出来的保存数据形式为:

这种保存方式,可以在调试数据大的时候使用

相关推荐
AI成长日志24 分钟前
【笔面试算法学习专栏】堆与优先队列实战:力扣hot100之215.数组中的第K个最大元素、347.前K个高频元素
学习·算法·leetcode
北顾笙98029 分钟前
day18-数据结构力扣
数据结构·算法·leetcode
阿Y加油吧37 分钟前
LeetCode 中等难度 | 回溯法进阶题解:单词搜索 & 分割回文串
算法·leetcode·职场和发展
QH_ShareHub1 小时前
反正态分布算法
算法
王老师青少年编程1 小时前
csp信奥赛c++中的递归和递推研究
c++·算法·递归·递推·csp·信奥赛
Bczheng11 小时前
五.serialize.h中的CDataStream类
算法·哈希算法
小O的算法实验室1 小时前
2025年SEVC,考虑组件共享的装配混合流水车间批量流调度的多策略自适应差分进化算法,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
汀、人工智能1 小时前
[特殊字符] 第36课:柱状图最大矩形
数据结构·算法·数据库架构·图论·bfs·柱状图最大矩形
List<String> error_P1 小时前
蓝桥杯最后冲刺(三)
算法
样例过了就是过了2 小时前
LeetCode热题100 跳跃游戏
c++·算法·leetcode·贪心算法·动态规划