Я экспериментировал с функцией NIC Solarflare под названием TX PIO. Насколько я понимаю, PIO транспортирует данные через ЦП, DMA обходит ЦП путем прямой связи между устройствами. Чем отличается традиционный PIO от TX PIO от Solarflare?
PIO (запрограммированный ввод / вывод) описывает процесс, посредством которого данные напрямую передаются процессором на устройство ввода-вывода или с него. Это альтернатива методам прямого доступа к памяти шины, когда данные передаются без участия ЦП. Адаптеры серии Solarflare 7000 поддерживают TX PIO, где пакеты s на тракте передачи могут быть «переданы» адаптеру непосредственно процессором. Это улучшает задержку передаваемых пакетов, но может привести к очень небольшому увеличению загрузки ЦП. Поэтому TX PIO особенно полезен для небольших пакетов.