Когда я запускаю тренировку с помощью fast.ai, используется только ЦП, хотя
import torch; print(torch.cuda.is_available())
показывает, что CUDA доступна и часть памяти на GPU занята моим тренировочным процессом.
from main import DefectsImagesDataset
from fastai.vision.all import *
import numpy as np
NUM_ELEMENTS = 1e5
CSV_FILES = {
'events_path':
'./data/events.csv',
'defects_path':
'./data/defects2020_all.csv',
}
defects_dataset = DefectsImagesDataset(CSV_FILES['defects_path'], CSV_FILES['events_path'], NUM_ELEMENTS, window_size=10000)
model = models.resnet34
BATCH_SIZE = 16
NUMBER_WORKERS = 8
dls = DataLoaders.from_dsets(defects_dataset, defects_dataset, bs=BATCH_SIZE, num_workers=NUMBER_WORKERS)
import torch; print(torch.cuda.is_available())
loss_func = nn.CrossEntropyLoss()
learn = cnn_learner(dls, models.resnet34, metrics=error_rate, n_out=30, loss_func=loss_func)
learn.fit_one_cycle(1)
CUDA-Версия: 11.5
Fast.ai-Версия: 2.5.3
Как заставить fast.ai использовать GPU?
Решение проблемы
Мне пришлось указать устройство при создании загрузчиков данных. Вместо
dls = DataLoaders.from_dsets(
defects_dataset,
defects_dataset,
bs=BATCH_SIZE,
num_workers=NUMBER_WORKERS)
я знаю есть
dls = DataLoaders.from_dsets(
defects_dataset,
defects_dataset,
bs=BATCH_SIZE,
num_workers=NUMBER_WORKERS,
device=torch.device('cuda'))
Комментариев нет:
Отправить комментарий