
мы пытаемся настроить 40-гигабитное соединение между двумя серверами и получаем странное поведение процессора при использовании iperf. Он также использует только около 10 Гбит/с из возможных 40.
Характеристики сервера:
- AMD EPYC7413
- 8x MultiBitECC 3200 МГц 16384 МБ памяти
- Супермикро H12SSL-CT
- Intel XL710 40GBe
- Ubuntu 20.04.3 LTS 5.4.0-84-gene
Серверы подключены друг к другу напрямую через оптоволокно. Никаких коммутаторов.
Пример
host1# iperf -s
host2# iperf -c host1 -i 1 -t 120
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 1.0 sec 1.39 GBytes 12.0 Gbits/sec
[ 3] 1.0- 2.0 sec 1.00 GBytes 8.61 Gbits/sec
[ 3] 2.0- 3.0 sec 1.03 GBytes 8.88 Gbits/sec
[ 3] 3.0- 4.0 sec 1.04 GBytes 8.92 Gbits/sec
[ 3] 4.0- 5.0 sec 1021 MBytes 8.56 Gbits/sec
[ 3] 5.0- 6.0 sec 1.05 GBytes 9.01 Gbits/sec
[ 3] 6.0- 7.0 sec 1.02 GBytes 8.78 Gbits/sec
[ 3] 7.0- 8.0 sec 1.02 GBytes 8.74 Gbits/sec
[ 3] 8.0- 9.0 sec 1.01 GBytes 8.69 Gbits/sec
[ 3] 9.0-10.0 sec 1.02 GBytes 8.75 Gbits/sec
[ 3] 10.0-11.0 sec 1.05 GBytes 9.03 Gbits/sec
[ 3] 11.0-12.0 sec 1015 MBytes 8.51 Gbits/sec
[ 3] 12.0-13.0 sec 1.02 GBytes 8.72 Gbits/sec
[ 3] 13.0-14.0 sec 1014 MBytes 8.51 Gbits/sec
[ 3] 14.0-15.0 sec 974 MBytes 8.17 Gbits/sec
[ 3] 0.0-15.0 sec 15.6 GBytes 8.92 Gbits/sec
В интернете я нашел официальное руководство по настройке производительности отАМДи что-то изfasterdata.es.net
Они предлагают сделать определенные настройки системы, такие как изменение регулятора ЦП и буфера TCP. Я сделал соответствующие изменения и получил улучшение только на 1 Гбит/с.
Когда я проверял тактовую частоту процессора, при запуске iperf она всегда падала примерно до 400 МГц.
Есть ли какие-либо предложения, почему iperf отправляет процессор в спящий режим или как я могу улучшить скорость передачи данных по однопоточному протоколу TCP? Запуск нескольких потоков TCP лучше использует полосу пропускания, но это не наш вариант использования.
Спасибо
решение1
Я изменил Global C-State control в BIOS с автоматического на отключенное и установил
настроенный-adm профиль сетевой-пропускной способности
Я не уверен, является ли это окончательным решением, но на данный момент оно работает.
Редактировать:
В конце концов, также потребовалось обновление BIOS. Однако tuned-adm все равно обеспечивает прирост производительности.