如何在AWS SageMaker Notebook中使用实例SSD提升训练IOPS
解决SageMaker Notebook实例本地SSD挂载与数据集迁移问题
1. 识别并挂载本地NVMe SSD
ml.g4dn.xlarge实例自带的125GB NVMe SSD默认未挂载,需手动操作:
- 查看实例存储设备,确认目标SSD:
输出中125GB左右的设备通常为lsblk/dev/nvme1n1(根卷一般是/dev/nvme0n1)。 - 格式化设备(注意:此操作会清空设备所有数据,务必确认设备正确):
sudo mkfs -t ext4 /dev/nvme1n1 - 创建挂载目录并完成挂载:
sudo mkdir /local_ssd sudo mount /dev/nvme1n1 /local_ssd - 设置目录读写权限,确保当前用户可正常访问:
sudo chmod 777 /local_ssd
2. 设置开机自动挂载(可选)
避免实例重启后需重复挂载操作,可配置开机自动挂载:
- 编辑
/etc/fstab文件添加挂载规则:sudo echo "/dev/nvme1n1 /local_ssd ext4 defaults,nofail 0 0" >> /etc/fstab - 验证规则是否生效:
sudo mount -a
3. 迁移数据集到本地SSD
将数据集从EFS或EBS复制到本地SSD,示例命令如下:
- 从EFS复制(假设EFS挂载路径为
/efs):cp -r /efs/your_dataset /local_ssd/ - 执行
sync命令确保数据完全写入SSD:sync
4. 调整训练代码路径
在训练脚本中,将数据集的读取路径修改为/local_ssd/your_dataset,即可利用本地SSD的高IOPS性能加速训练。
关键注意事项
- 本地SSD属于临时存储:实例停止、终止或出现故障时,SSD内的数据会丢失。训练完成后,需及时将模型、日志等重要数据复制回EFS/EBS等持久化存储。
- SageMaker Studio场景:Studio默认使用EFS存储,若需在Studio中使用本地SSD,需通过终端手动执行上述挂载步骤,但Studio实例重启后需重新操作。
内容的提问来源于stack exchange,提问作者Luke Sutor
相关产品推荐
相关产品推荐

