MindSpore报错"RuntimeError: Invalid data, Page size."
1 报错描述
1.1 系统环境
ardware Environment(Ascend/GPU/CPU): CPU
Software Environment:
– MindSpore version (source or binary): 1.6.0
– Python version (e.g., Python 3.7.5): 3.7.6
– OS platform and distribution (e.g., Linux Ubuntu 16.04): Ubuntu 4.15.0-74-generic
– GCC/Compiler version (if compiled from source):
1.2 基本信息
1.2.1脚本
此案例将自定义数据集转化成MindSpore Record数据格式。
1.2.2报错
RuntimeError: Syntax error. Invalid data, Page size: 1048576 is too small to save a blob row. Please try to use the mindrecord api ‘set_page_size’ to enable 64MB page size.
Line of code : 1153
2 原因分析
根据报错信息提示,Pagesize设置太小导致无法读取那么多数据。
3 解决方法
参考提供的set_page_size API,将pagesize设置大一点。
4 总结
1.设置表示存储数据的区域的页面的大小,这些区域分为两种类型:row page和blob page。页面越大,可以存储的数据就越多。
2.不设置pagesize的时候,默认可储存样本大小为32MB,如果样本的大小大于默认大小,用户需要调用API来设置适当的大小。
3.pagesize可调节范围在321024(32KB)至2561024*1024(256MB)。
5 参考文档
mindspore文档->API->mindspore.mindrecord->set_page_size
https://mindspore.cn/docs/zh-CN/r1.7/api_python/mindspore.mindrecord.html#mindspore.mindrecord.FileWriter.set_page_size