Импорт readline segfaults после импорта TVM в Ubuntu

Я работаю с TVM, компилятором глубокого обучения. В моем рабочем процессе полезно иметь возможность использовать import pdb; pdb.set_trace()и перейдите в отладчик. Тем не мение, pdb.set_trace() вызывает segfault в любое время после импорта TVM.

Моя текущая настройка - Ubuntu 16.04 (работает в подсистеме Windows для Linux, но это происходит и на моей машине 16.04!) - Python 3.6

Эта проблема не возникает на Windows или Mac.

Эта проблема возникает только при запуске сценария из командной строки (т.е. python3 minimum-reproducible-example.py), а не при запуске от python3 Отв.

Я сделал некоторую отладку с помощью gdb и сузил ее: ошибка возникает, когда readline пакет импортирован.

Минимальный воспроизводимый пример:

import tvm
import readline

После отладки с помощью gdb я отследил его до определенной строки в cpython:

Program received signal SIGSEGV, Segmentation fault.   
PyModule_GetState (m=0x0) at Objects/moduleobject.c:558
558         if (!PyModule_Check(m)) {                  

В этом случае, m является 0x0, которого, похоже, функция не ожидает.

Если бы кто-то мог просто указать мне на более полезные способы отладки этого, это было бы полезно!

0 ответов

Другие вопросы по тегам