Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Можно ли ускорить передачу данных через localhost?  (Прочитано 1084 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн lega911

  • Автор темы
  • Участник
  • *
  • Сообщений: 203
    • Просмотр профиля
    • python & linux
Я сделал тест-приложение на c++ + epoll, при запуске оно доходит до 300к "передач данных" (send/recv) в сек, в итоге съедает 200% CPU
если запустить 2 копии и развести по ядрам (taskset), то оба доходят до 150k/sec, и потребляют по 100% CPU, - суммарно выходят те же 300k/sec, т.е. достигнут некий лимит не из-за CPU (доступно 16+ ядер) или реализации приложения.
Видимо это некий сетевой лимит, вопрос - можно ли этот лимит увеличить?

PS: нужно увеличить не передаваемый объем (что достигается за счет банчей), а именно кол-во вызовов send/recv, сами пакеты не большие 50-100 байт
« Последнее редактирование: 13 Августа 2019, 23:15:17 от lega911 »

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6754
  • 20% Cooler
    • Просмотр профиля
через localhost сравнимо со скоростью HDD. CPU кушать не должно.

Пользователь добавил сообщение 13 Августа 2019, 23:55:52:
curl -o somefile 'http://localhost/somevideo.avi'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  312M  100  312M    0     0  48.1M      0  0:00:06  0:00:06 --:--:-- 42.9M
« Последнее редактирование: 13 Августа 2019, 23:56:12 от ALiEN175 »
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн lega911

  • Автор темы
  • Участник
  • *
  • Сообщений: 203
    • Просмотр профиля
    • python & linux
1. Ваш пример уперся в диск, т.к. файл с диска в итоге читается
2. localhost гораздо быстрее диска (гигабайты в сек)
3. Вопрос не про скорость передачи, а про кол-во io вызовов.

Но всё равно спасибо за попытку помочь

Пользователь добавил сообщение 14 Августа 2019, 10:15:37:
iperf -c 127.0.0.1 -d показывает 50+ Gbits/sec
диск столько не может
« Последнее редактирование: 14 Августа 2019, 10:15:37 от lega911 »

Оффлайн aSmile

  • Активист
  • *
  • Сообщений: 754
    • Просмотр профиля
А можно посмотреть на исходники этого тестового приложения?

Оффлайн lega911

  • Автор темы
  • Участник
  • *
  • Сообщений: 203
    • Просмотр профиля
    • python & linux
А можно посмотреть на исходники этого тестового приложения?
https://github.com/lega911/ijson

 

Страница сгенерирована за 0.04 секунд. Запросов: 25.