GOOGLE ADS

среда, 13 апреля 2022 г.

fast.ai не использует графический процессор

Когда я запускаю тренировку с помощью 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'))

Комментариев нет:

Отправить комментарий

Laravel Datatable addColumn returns ID of one record only

Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...