Многопроцессорность или многопоточность, что предпочесть для сбора, обработки и построения графиков данных в реальном врPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Многопроцессорность или многопоточность, что предпочесть для сбора, обработки и построения графиков данных в реальном вр

Сообщение Anonymous »


Я написал программу на Python для сбора и обработки данных самостоятельно. Я пытаюсь интегрировать все задачи для обработки и визуализации в реальном времени. Задачи
[*]Сбор данных — выполняется постоянно для сбора данных из 4 каналов. [*]Обработка на графическом процессоре — выполняется пакетно за каждую секунду полученных данных. обработка занимает ~300 мс. [*]Постройте обработанные данные — используя matplotlib после обработки графическим процессором
Полученные данные добавляются в виде новой строки в массив numpy. Через 2 секунды я удаляю самую старую строку при добавлении новой (чтобы сохранить фиксированный размер памяти). Хотелось бы добиться максимальной скорости обновления графика.

Я хотел бы знать, следует ли мне использовать многопоточность или многопроцессорность. Если я использую многопоточность или многопроцессорность, поскольку мой массив всегда используется задачей 1, сможет ли моя задача 2 получать данные, не блокируя задачу 1, или наоборот? например, если мой массив имеет 2000 строк, которые постоянно добавляются потоком сбора данных (начальные/более старые строки/данные удаляются), сможет ли другой поток прочитать первые 1000 строк этого потока одновременно? Если есть какие-то другие подходы, кроме вышеперечисленных, тоже хорошо.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»