Обход ядра melanox (LD_preload) Оптимизация производительности записи сокетов TCP/IP [закрыто]C++

Программы на C++. Форум разработчиков
Anonymous
Обход ядра melanox (LD_preload) Оптимизация производительности записи сокетов TCP/IP [закрыто]

Сообщение Anonymous »

Мы выполняем профилирование с использованием времени отправки сокета и обнаружили, что «отправка» занимает около 5-7 мкс, размер пакета составляет 215 байт.
Код профилирования сильный>

Код: Выделить всё

#ifdef SEND_ASYNC_DEBUG

loge("SendNext, b4send, {}", tn.rdns() starttime); // 4-150 max=1500ns starttime = tn.rdns();

#endif

auto n = send(m_Socket, sendPtr, sendSize, MSG_NOSIGNAL);

#ifdef SEND_ASYNC_DEBUG

loge("SendNext, send, {}", tn.rdns() starttime); // 3000-10000 max=20000ns
с помощью VMA_stat мы подтверждаем, что все отправленные данные уже «выгружены», поэтому я предполагаю, что

Код: Выделить всё

send(xxx,xxx,xxx,xxx)
используете библиотеку mellanox вместо ?
вопрос[/b]
  • Есть ли какие-либо методы оптимизации для сокращения времени передачи сокета?
  • Есть ли очевидные проблемы с использованием LD_preload?
мы используем VMA_SPEC=latency и работает на CentOS

Подробнее здесь: https://stackoverflow.com/questions/792 ... timization

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