如何解决当我从 tf.keras.models 导入 Sequential 时出现 MemoryError
我正在进行机器学习算法基准测试,以比较 GPU、cpu、cpu 多核等的执行速度。在我的测试中,我需要为 ram 设置内存限制。
问题是当我从 tensorflow.keras 导入一些东西时程序会立即崩溃
if os.name == 'posix':
import resource
def memory_limit():
soft,hard = resource.getrlimit(resource.RLIMIT_AS)
resource.setrlimit(resource.RLIMIT_AS,(4096,hard))
memory_limit()
print("ONE")
from tensorflow.keras.models import Sequential
from tensorflow.keras.preprocessing.image import ImageDataGenerator
from tensorflow.keras.layers import Conv2D,MaxPooling2D,ZeroPadding2D,GlobalAveragePooling2D,Flatten,Activation,Dense,Dropout
from tensorflow.keras.layers import Batchnormalization
from tensorflow.keras.datasets import mnist # MNIST dataset is included in Keras
from tensorflow.keras import utils as np_utils # NumPy related tools
print("TWO")
显示了 print("ONE")
但不显示第二个打印,错误是:
One
Traceback (most recent call last):
File "ml_multi_cpu.py",line 18,in <module>
from tensorflow.keras.models import Sequential
File "/usr/local/lib/python3.6/site-packages/tensorflow/__init__.py",line 34,in <module>
import inspect as _inspect
File "<frozen importlib._bootstrap>",line 971,in _find_and_load
File "<frozen importlib._bootstrap>",line 955,in _find_and_load_unlocked
File "<frozen importlib._bootstrap>",line 665,in _load_unlocked
File "<frozen importlib._bootstrap_external>",line 674,in exec_module
File "<frozen importlib._bootstrap_external>",line 764,in get_code
File "<frozen importlib._bootstrap_external>",line 833,in get_data
MemoryError
产生错误的确切行是:
resource.setrlimit(resource.RLIMIT_AS,hard))
当我评论这一行时,程序运行良好,但我需要设置这个限制。我注意到 getrlimit
返回一个带有软和硬值的元组 (-1,-1)
另外,是否有可能,如果有,如何在 GPU 上应用 memory_limit?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。