мы пытаемся установить 40-гигабитное соединение между двумя серверами и получаем странное поведение процессора при использовании iperf. Он также использует только около 10 Гбит/с из 40 возможных.
Спецификации сервера:
- AMD ЭПИК 7413
- 8x MultiBitECC 3200 МГц 16384 МБ памяти
- Супермикро H12SSL-CT
- Intel XL710 40GBe
- Ubuntu 20.04.3 LTS 5.4.0-84-ген
Серверы подключены друг к другу напрямую через оптоволокно. Нет переключателей.
Пример
host1# iperf -s
host2# iperf -c host1 -i 1 -t 120
[ID] Пропускная способность интервальной передачи
[ 3] 0,0– 1,0 с 1,39 Гбайт 12,0 Гбит/с
[ 3] 1,0– 2,0 с 1,00 ГБ 8,61 Гбит/с
[ 3] 2,0– 3,0 с 1,03 ГБ 8,88 Гбит/с
[ 3] 3,0– 4,0 с 1,04 ГБ 8,92 Гбит/с
[ 3] 4,0- 5,0 с 1021 МБ 8,56 Гбит/с
[ 3] 5,0– 6,0 с 1,05 ГБ 9,01 Гбит/с
[ 3] 6,0– 7,0 с 1,02 Гбайт 8,78 Гбит/с
[ 3] 7,0– 8,0 с 1,02 Гбайт 8,74 Гбит/с
[ 3] 8,0– 9,0 с 1,01 ГБ 8,69 Гбит/с
[ 3] 9,0–10,0 с 1,02 Гбайт 8,75 Гбит/с
[ 3] 10,0–11,0 с 1,05 Гбайт 9,03 Гбит/с
[ 3] 11,0-12,0 с 1015 МБ 8,51 Гбит/с
[ 3] 12,0–13,0 с 1,02 Гбайт 8,72 Гбит/с
[ 3] 13,0-14,0 с 1014 МБ 8,51 Гбит/с
[ 3] 14,0-15,0 с 974 МБ 8,17 Гбит/с
[ 3] 0,0–15,0 с 15,6 Гбайт 8,92 Гбит/с
В Интернете я нашел официальное руководство по настройке производительности от AMD и что-то из fastdata.es.net
Они предлагают выполнить определенные системные настройки, такие как изменение регулятора ЦП и буфера TCP.
Я внес соответствующие изменения и получил улучшение только на 1 Гбит/с.
Когда я проверял тактовую частоту процессора, частота процессора всегда снижалась примерно до 400 МГц при запуске iperf.
Любое предложение, почему либо iperf отправляет ЦП в спящий режим, либо как я могу улучшить скорость передачи однопоточного tcp? Запуск нескольких потоков tcp лучше использует полосу пропускания, но это не наш вариант использования.
Спасибо