Последние несколько дней я пытался установить CUDA, чтобы он соответствовал моим Tensorflow CNN.
Прямо сейчас на моей машине установлено (Ubuntu 20.04 LTS, RTX3060):
тензорный поток-GPU 2.4
питон 3.8.10
cuDNN 8.0
КУДА 11.0
nvidia-драйвер-495
Драйвер был установлен вместе с CUDA 11.0.
Когда я подгоняю модель, я вижу, что мой графический процессор выделяет всю свою память, но подробное описание модели остается на: Эпоха: 1/50
и никогда не пойдет дальше.
Я попытался понизить версию своего драйвера до nvidia-driver-470, так как 495 официально не выпущен.
Это действие привело к тому, что все перестало работать: мой графический процессор больше не выделяет ресурсы при установке, nvidia -smi
больше не работает, и теперь импорт тензорного потока возвращает:
Не удалось загрузить динамическую библиотеку libcudart.so.11.0; ошибка:
,
чего раньше не было.
Кто-нибудь знает, откуда может появиться эта проблема?
Спасибо
редактировать 1:
После перезагрузки импорт Tensorflow возвращает:
tensorflow/stream_executor/platform/default/dso_loader.cc:60] Не удалось загрузить динамическую библиотеку «libcudart.so.11.0»; dlerror: libcudart.so.11.0: невозможно открыть общий объектный файл: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/lib/cuda/include:/usr/lib/cuda/lib64:
2021-11-02 06:24:40.852786: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Игнорируйте вышеуказанную ошибку cudart dlerror, если на вашем компьютере не настроен графический процессор.
Каталоги /usr/lib/cuda/include и /usr/lib/cuda/lib64 действительно существуют.
редактировать 2:
После переустановки cuda по этой ссылке: https://askubuntu.com/a/1288405/231142
Импорт Tensorflow работает и не возвращает никаких проблем.
EarlyStop=EarlyStopping(терпение=10,restore_best_weights=True)
Reduce_LR = ReduceLRonPlateau (монитор = 'val_accuracy', подробный = 2, коэффициент = 0,5, min_lr = 0,00001)
model_check=ModelCheckpoint('model.hdf5',monitor='val_loss',verbose=1,save_best_only=True)
tensorbord = TensorBoard (log_dir = 'журналы')
callback=[EarlyStop, Reduce_LR,model_check,tensorbord]
возвращает:
2021-11-02 20:09:55.607299: I tensorflow/core/profiler/lib/profiler_session.cc:131] Инициализация сеанса профилировщика.
2021-11-02 20:09:55.607335: I tensorflow/core/profiler/lib/profiler_session.cc:146] Сеанс профилировщика запущен.
2021-11-02 20:09:55.608325: I tensorflow/core/profiler/internal/gpu/cupti_tracer.cc:1614] Profiler обнаружил 1 GPU
2021-11-02 20:09:55.609026: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Не удалось загрузить динамическую библиотеку «libcupti.so.11.2»; dlerror: libcupti.so.11.2: невозможно открыть общий объектный файл: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-11.5/lib64:/usr/lib/cuda/include:/usr/lib/cuda/lib64:/usr/local/cuda-11.5/lib64
2021-11-02 20:09:55.609320: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Не удалось загрузить динамическую библиотеку libcupti.so; dlerror: libcupti.so: невозможно открыть общий объектный файл: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-11.5/lib64:/usr/lib/cuda/include:/usr/lib/cuda/lib64:/usr/local/cuda-11.5/lib64
2021-11-02 20:09:55.609372: E tensorflow/core/profiler/internal/gpu/cupti_tracer.cc:1666] Функция cupti_interface_->Subscribe( &subscriber_, (CUpti_CallbackFunc)ApiCallback, this) не удалось с ошибкой CUPTI не может быть загружен или символ не найден.
2021-11-02 20:09:55.609476: I tensorflow/core/profiler/lib/profiler_session.cc:164] Сеанс профилировщика разрывается.
2021-11-02 20:09:55.609527: функция Etensorflow/core/profiler/internal/gpu/cupti_tracer.cc:1757] cupti_interface_->Finalize() завершилась с ошибкой CUPTI не может быть загружен или символ не может быть найден.
Подгонка модели начинается и использует все мои GPU и CPU, но все еще идет медленно и возвращается:
2021-11-02 20:09:55.832301: W tensorflow/core/framework/cpu_allocator_impl.cc:80] Выделение 428802048 превышает 10% свободной системной памяти.
2021-11-02 20:09:56.269844: W tensorflow/core/framework/cpu_allocator_impl.cc:80] Выделение 571736064 превышает 10% свободной системной памяти.
2021-11-02 20:09:56.669900: W tensorflow/core/framework/cpu_allocator_impl.cc:80] Выделение 428802048 превышает 10% свободной системной памяти.
2021-11-02 20:09:56.821919: W tensorflow/core/framework/cpu_allocator_impl.cc:80] Выделение 571736064 превышает 10% свободной системной памяти.
2021-11-02 20:09:57.065544: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:185] Ни один из проходов оптимизации MLIR не включен (зарегистрировано 2)
Эпоха 1/20
2021-11-02 20:09:59.868007: I tensorflow/stream_executor/cuda/cuda_dnn.cc:369] Загружена версия 8204 cuDNN
1/137 [................................] - Расчетное время прибытия: 1:15:21 - Потери: 0,7485 - Точность: 0.38712021-11-02 20:10:30.404084: I tensorflow/core/profiler/lib/profiler_session.cc:131] Инициализация сеанса профилировщика.
2021-11-02 20:10:30.404114: I tensorflow/core/profiler/lib/profiler_session.cc:146] Сеанс профилировщика запущен.
2021-11-02 20:10:30.404277: E tensorflow/core/profiler/internal/gpu/cupti_tracer.cc:1666] функция cupti_interface_->Subscribe( &subscriber_, (CUpti_CallbackFunc)ApiCallback, this) не удалось с ошибкой CUPTI не может быть загружен или символ не найден.
Может возникнуть проблема с libcupti.so.11.2
библиотека, но я не нашел ее на данный момент.