Отладчик Pycharm не работает с Pytorch и глубоким обучением

Отладчик Pycharm не работает с Pytorch и глубоким обучением

Этот вопрос находится где-то между Stackoverflow и Superuser - по крайней мере, на мой взгляд, так что не стесняйтесь направить меня на SO, если я не по адресу (по вашему мнению ;)).

Проблема:

Если я поставлю точку останова в своем коде Python, отладчик остановится. Если я захочу перейти на следующую строку, он это сделает. Пока неэто происходит после enumerate(dataloader). Я могу поставить точку останова после enumerate(dataloader), и отладчик тоже остановится. Однако я не могу сделать шаг дальше. То же самое произойдет, если я поставлю точку останова перед enumerate(dataloader) и перейду через строку enumerate. Это не сработает для строки после enumerate(..).

Интересный факт, что это работало до недавнего времени - где-то неделю назад.

# Breakpoints work, stepping over works
...
for epoch in range(num_epochs):
    for i, data in enumerate(dataloader, 0):
        # If I break before this line and I step until the next, I can not step afterwards
        netD.zero_grad()
        # Breakpoints work, stepping does not

Что я пытался сделать, чтобы решить эту проблему:

  • Я удалил PyCharm и переустановил его.
  • Я попробовал использовать версию Community.
  • Я попробовал запустить обе версии с расширением отладчика Cython и без него.
  • Я проверил, какие программы я установил после того, как они перестали работать, и удалил их.
  • Я проверил множество постов на форумах Jetbrains, SO и Pytorch. Нашел несколько, которые выглядели интересными, но на самом деле они не подходили к моей проблеме.
  • Я пробовал использовать разные версии CUDA и cudnn.

Пока ничего не помогло... Я не хочу переустанавливать ОС, что, скорее всего, помогло бы, но да, по понятным причинам это не то, чего я хочу. Кто-нибудь КОГДА-ЛИБО сталкивался с таким поведением и может мне помочь? Заранее спасибо. Не стесняйтесь спрашивать дополнительные подробности. Я постараюсь предоставить как можно больше подробностей

Я перечислю некоторые детали моей установки:

ОПЕРАЦИОННЫЕ СИСТЕМЫ:

  • Процессор Intel® Core™ i7-7700K с тактовой частотой 4,20 ГГц × 8
  • Nvidia RTX 2080 TI
  • NVIDIA-SMI 430.26 Версия драйвера: 430.26 Версия CUDA: 10.2
  • Убунту 18.04

Программное обеспечение:

  • Сообщество PyCharm и EDU 2019.2
  • (Ана)конда
  • cudnn также установлен
  • Два окружения conda для python 3.6 и python 3.7 с pytorch и всем необходимым (numpy, scipy, matplotlib и т. д.)

НВКК:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Apr_24_19:10:27_PDT_2019
Cuda compilation tools, release 10.1, V10.1.168

решение1

У меня была та же проблема в течение нескольких недель, и я только что смог ее исправить! Решением было установить num_workersво 0время создания объекта DataLoader.

Связанный контент