我有一个Python应用程序,我使用的是TensorFlow,我在Docker容器中运行它。在本地运行时,我看到内存使用情况仍然低于4GB的RAM,但是有一些大文件正在写入和处理。当TensorFlow达到创建了第一个检查点文件的时候,我得到以下异常:VirtualBox内存异常 - 使用TensorFlow和Docker的std :: bad_alloc
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
我的模型是复杂,所以这个文件可能高于1GB,也是我的数据是图像,所以我已经下载了约30GB的数据只是为了开始运行模型,所以我不知道这是否偶然发生在这里,或者如果这个文件实际上太大了。我只将一小批图像加载到内存中进行每个时代的模型训练,所以我试图保持内存使用率较低。我的VirtualBox的配置看起来像这样:出现
的错误使用C++,所以我认为它是从TensorFlow代码来内部。有没有人看过这样的东西,或知道我可以改变什么?我觉得有足够的RAM分配,但也许我的磁盘访问配置不正确?