我在 EC2 上进行了手动扩展设置,我在其中基于 AMI 创建实例,该 AMI 已在启动时运行我的代码(使用 Systemd)。我面临一个基本问题:在主实例(我用来创建 AMI 的实例)上,Python 代码在启动映像后需要 8 秒才能准备好,这包括导入库、加载模型的状态字典等。 ..)。现在,在我使用 AMI 创建的映像上,代码首次启动需要 5 分钟以上,将状态字典从磁盘加载到 GPU 内存需要特别长的时间,第一次代码花费的时间与要加载的主实例。
AMI 保留与主实例相同的pycache文件夹,因此应该不会花费太多时间,因为我认为 AMI 应该包含所有内容,不是吗?所以,我的问题是:是否还有其他我没有考虑到的缓存可以使 CUDA / Python 更快?我只保留pycache / 文件夹,但我不知道是否可以采取任何措施来确保第一次启动所有内容时不会花费太多时间。这是我的主要结构:
# Import libraries
import torch
import numpy as np
# Import personal models (takes 1 minute)
from model1 import model1
from model2 import model2
# Load first model
model1_object = model1()
model2_object = model2()
# Load state dicts (takes 3+ minutes, the first time in …Run Code Online (Sandbox Code Playgroud)