python - 如何处理磁盘瓶颈?
问题描述
在我的 HDD 上进行阅读训练时遇到了瓶颈。
- 我不清楚为什么在训练我的 NN 时我的磁盘被大量使用
- 也不是为什么选择特定驱动器(磁盘0:D)
训练时的设置和磁盘使用情况:
- 磁盘 0 (D:) 100%(读取)- 慢速 HHD
- 磁盘 1 (C:) 0% - 快速 SSD
- 磁盘 2 (E:) 0% - 慢速 HHD (>os.path.dirname(sys.executable) - 'E:\Anaconda')
我假设它默认选择磁盘 0,因为它是磁盘 0(主板配置);不是这样吗?除了切换电缆之外,我还能以某种方式将其更改为磁盘 1,它对性能有何影响?
我的 GPU(5%) 和 CPU(30%) 几乎没有使用,我在 CPU 向 GPU 提供数据时遇到了瓶颈,当 RAM(93%) 低时,是否有一些地方默认写入磁盘 0 ?
TF:2.1,Windows 10。 Jupyter 笔记本:
#**TEXT TOKENIZATION**
#Model:
epochs = 4
model = Sequential()
model.add(Dense(512, input_shape=(1000,)))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes))
model.add(Activation('softmax'))
model.compile(loss='binary_crossentropy',
optimizer='adam',
metrics=['accuracy'])
history = model.fit(x_train, y_train,
batch_size=1024,
epochs=epochs,
verbose=1,
shuffle=True,
use_multiprocessing=True,
validation_split=0.1)
解决方案
当 RAM 溢出时,操作系统正在使用分页。
Processor list->Performance->RAM: Read virtual/Allocated RAM... 驻留在您的磁盘驱动器中,如果磁盘错误,可以通过以下方式在 Windows 中更改:
系统->高级->性能->高级->更改
重新分配,然后重新启动。
来源:https ://www.tomshardware.com/news/how-to-manage-virtual-memory-pagefile-windows-10,36929.html
推荐阅读
- javascript - firebase Query.orderBy* 返回无序列表
- dart - 调用 setState 后如何防止 Flutter 应用滚动到顶部?
- unity3d - 如何通过 Unity 3D 跨多个平台使用 Google 登录?
- java - 安装单个 Eclipse,同时使用不同的 JDK 安装或不同的 ini 配置启动会话
- tensorflow - Tensorflow - 在执行 mean_squared_error 损失函数时没有为任何变量提供梯度
- bash - 如何在bash中求和倒数?
- azure - Azure EasyAuth:尝试使用 Microsoft 帐户登录时出现未经授权的错误
- javascript - 事件处理程序如何在 javascript 内部执行?
- sql - 具有多个表 SQL 的关联查询
- firebase - 对自定义电子邮件使用 Firebase 电子邮件验证