Обход ядра 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
Ответить

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

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

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

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

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