最近在ubuntu服务器上跑深度学习程序,出现报错:XIO: fatal IO error 25 (Inappropriate ioctl for device) on X server "localhost:11.0" after 7002 requests (7002 known processed) with 309 events remaining.
此程序之前在windows上运行没有问题,只在ubuntu上运行时报错。
分析原因:我的报错出现在某次epoch之后,而在我的程序中epoch结束后,程序进行了两步操作:1.以文件形式保存训练、验证损失 2.绘图保存训练、验证损失
1.程序是python语言写的,python写文件在windows和ubuntu的相对路径表示是一样的,文件也是在自己的目录下创建、修改,不存在文件权限不够的问题。排除
2.绘图使用的是matplotlib中的pyplot进行绘图,运行程序时使用的命令是nohup command > outinfo.txt,所以怀疑时nohup和pyplot起了冲突。
3.我将训练程序中的绘图程序进行注释,成功运行训练程序。在测试训练结果时,因为必须要绘图获取loss和AP等各个信息的变化趋势,所以就直接运行测试程序,不使用nohup命令,最终也成功运行,没有报错信息。
解决方案:在使用nohup命令运行程序时,避免使用pyplot进行绘图。