соотношение скорости процессора и пропускной способности сетевой карты

Я тестирую производительность реализации OpenvSwitch на основе DPDK (github.com/01org/dpdk-ovs) на следующем сервере:

  • Процессор Intel Xeon E3 3,30 ГГц
  • Сетевая карта Intel 1G I210
  • Оперативная память 8G

По сути, моя настройка включает два порта, трафик поступает на порт 0 и перенаправляется dpdk на порт 1. Производительность довольно низкая, хотя я изолировал процессы на разных ядрах на машине с программным обеспечением DPDK. Я не выполнял привязку IRQ, потому что в DPDK есть пользовательские драйверы режима опроса.

Теперь я начинаю задаваться вопросом, может ли скорость процессора сервера влиять на общую производительность? Я имею в виду, что касается скорости сетевой карты и производительности обработки пакетов, нормально ли замедлять процессор, то есть снижать частоту, чтобы добиться лучшей производительности, или это звучит глупо?

Спасибо.


person Mark    schedule 21.01.2015    source источник


Ответы (1)


Очень маловероятно, что ЦП снижает скорость циклов обработки пакетов в соответствии с возможностями обработки сетевой карты. В идеале, когда сетевая карта работает на полную мощность, то есть когда ее буферы пакетов передаются по DMA в системную память, форма памяти сетевой карты не требует никаких циклов ЦП. И когда DPDK PMD rte_eth_rx/tx_burst() выполняется для приема или передачи на двух разных физических процессорах (в вашем случае) или на ядрах с гиперпоточностью, тогда требуются циклы ЦП. Следовательно, для повышения производительности обработки на мощности сетевой карты вам могут потребоваться дополнительные ядра, но это не замедляет работу ЦП.

person Sunil Bojanapally    schedule 05.02.2015