#python #linux #gnuradio
#python #linux #gnuradio
Вопрос:
В настоящее время у меня возникает следующая ошибка при запуске скрипта Python с блоками gnuradio 3.7:
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::buffer::allocate_buffer: failed to allocate buffer of size 64 KB
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::vmcircbuf_sysv_shm: shmget (2): No space left on device
> gr::buffer::allocate_buffer: failed to allocate buffer of size 64 KB
> terminate called after throwing an instance of 'std::bad_alloc'
> what(): std::bad_alloc Aborted (core dumped)
Я следовал предложенным здесь строкам: http://osdir.com/ml/discuss-gnuradio-gnu/2013-06/msg00521.html и изменение значений kernel.shmall и kernel.shmmax.
Но какие допустимые значения? Я увеличил их в 8 раз и не добился успеха.
Дополнительная информация: я запускаю и останавливаю цепочки gnuradio pythons в цикле. Каждый раз, когда я останавливаю диаграмму, с памятью все в порядке. У меня 6 процессоров и 24 ГБ оперативной памяти.
С наилучшими пожеланиями, Крис
Ответ №1:
Мы решили эту проблему в списке рассылки, пожалуйста, прочитайте тему ниже. Короче говоря: GNU Radio использует общую память для своих циклических буферов, и при определенных обстоятельствах у вас могут закончиться дескрипторы для них, что приводит к этой ошибке. Выполняет ли
sudo sysctl kernel.shmmni=32000
решить вашу проблему?
http://lists.gnu.org/archive/html/discuss-gnuradio/2014-11/msg00292.html
Приветствую, Маркус
Комментарии:
1. Решение подтверждено.