Загрузка пакетов Python занимает слишком много времени (3,5 в Anaconda для Windows)

#python #pip #conda

#python #pip #conda

Вопрос:

У меня есть некоторые проблемы с производительностью в моей среде разработки, которые я, похоже, не могу решить. Наиболее вопиющей проблемой является тот факт, что загрузка пакетов занимает на несколько порядков больше времени, чем следует:

введите описание изображения здесь

Это начало происходить случайным образом в какой-то момент недавно в процессе разработки. Я подозреваю, что это как-то связано с обновлениями пакетов. Причина в том, что я попытался воссоздать среду с помощью requirements.txt с фиксированными версиями на 3 разных машинах с разными версиями Anaconda, и проблема возникает на всех трех машинах, и это не происходило ни на одной из машин с более старыми версиями моего кода.

Я беспокоюсь о том, чтобы перенести любые недавние коммиты в производство, потому что это может привести к непредвиденному снижению производительности. Помимо длительного импорта, в некоторых моих собственных функциях происходят случайные непредсказуемые сбои ядра, которые, по-видимому, невозможно отладить (при пошаговом запуске с pdb они выполняются без проблем).

Есть ли какой-либо инструмент для отладки чего-либо подобного? Может ли это быть проблемой, связанной с conda или Windows? Я в полной растерянности.

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

1. Это всегда на Jupyter? или та же проблема с ванильным интерпретатором? Например, как ведет себя python -m timeit ‘import pandas’ из активированной среды?

2. 24.4 sec per loop для python -m timeit -n 1 -r 1 "import pandas" — так что еще хуже (возможно, jupyter предварительно загружает некоторые зависимости pandas).

3. Как python -c ‘import sys; print(sys.path)’ выглядит? (подумайте о добавлении к вопросу). Ищет ли он / загружает пакеты из неожиданных мест, например, где-то еще, кроме среды? Также может быть полезным совместное использование requirements.txt (если это возможно).

4. Путь слишком длинный, чтобы вставлять его сюда, но он начинается так: ['', 'C:\Users\[username]\AppData\Local\Continuum\anaconda3\envs\py35\python35.zip'... , и все, что после этого, указывает на тот же py35 каталог. Ссылка на requirements.txt .

5. Какие именно команды используются для создания requirements.txt и воссоздания среды?