#shared_memory — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #shared_memory, aggregated by home.social.
-
Почему multiprocessing.Queue() тормозит и как обойти это с помощью shared_memory
Привет, Хабр! Вы запускаете многопроцессную задачу, кидаете данные в multiprocessing.Queue() , а потом вдруг замечаете... что всё тормозит. Муторно. Медленно. Местами прям отвратительно. Вы смотрите в монитор, на top, на htop, на код — и не понимаете: ну ведь должно же летать! А не летит.
https://habr.com/ru/companies/otus/articles/913200/
#python #multiprocessing #очередь #производительность #shared_memory #межпроцессное_взаимодействие #кольцевой_буфер
-
Как мы используем разделяемую память в Aqueduct
Привет. Меня зовут Денис Лисовик, я Backend-инженер в команде Data Science SWAT Авито. В этой статье рассказываю, как использовать разделяемую память в Aqueduct. Вместе мы шаг за шагом пройдем от сервиса, который едва держит один RPS, до сервиса, который может держать сотни запросов в секунду. В процессе вы узнаете, как использовать разделяемую память и как сделать так, чтобы она не утекала, а приложение не падало с Segmentation fault.
-
Технология NTB: опыт применения и ее виртуализация QEMU
В статье мы расскажем о системах хранения данных (СХД), в частности о применении технологии NTB поверх шины PCIe. Наша команда столкнулась с задачей виртуализации технологии NTB в QEMU, решение которой было сведено к созданию частичной виртуализации IDT 89HPES24NT6AG2 PCI Express Switch, модификации модуля ядра Linux для поддержки нашей виртуализации и сборки воедино с помощью Yocto Project.
https://habr.com/ru/articles/853486/
#NTB #qemu #dma #RMDA #PCIE #схд #shared_memory #виртуализация #производительность #linux_kernel
-
[Перевод] Руководство по межпроцессному взаимодействию (IPC) в Linux — Часть 1
Представляю вашему вниманию перевод работы A guide to inter-process communication in Linux . Объём данной работы большой, поэтому перевод будет выполнен в виде нескольких отдельных статей:
https://habr.com/ru/articles/819263/
#ipc #linux #c #shared_memory #shared_storage #semaphore #lock #перевод
-
Python Multiprocessing. Обмен данными между процессами. Передача объектов пользовательских классов
Параллельное программирование — сложный, но очень полезный навык для программиста. Оно позволяет эффективно использовать мощности современных компьютеров с несколькими ядрами и процессорами. Это особенно важно при решении сложных задач, например, в инженерных расчетах, обработке мультимедийных данных, обучении нейросетей и многом другом. Модуль Multiprocessing позволяет использовать так называемый истинный параллелизм, то есть создавать процессы, которые выполняются полностью независимо друг от друга. В этом случае процессы не имеют общей памяти и не могут просто так читать и изменять одни и те же переменные. Конечно же, в модуле multiprocessing реализован нативный способ передавать данные между процессами, и даже не один. Однако как только мы отходим от встроенных типов данных, то готовые решения уже не работают. О том, как с этим обходиться, я и расскажу в этой статье.
https://habr.com/ru/articles/789904/
#multiprocessing #DataManager #SyncManager #shared_memory #параллельное_программирование #параллелизм #процесс