chúng tôi đang cố gắng thiết lập kết nối 40gbit giữa hai máy chủ và nhận được hành vi cpu kỳ lạ khi sử dụng iperf. Nó cũng chỉ sử dụng khoảng 10Gbit/s trong số 40 có thể.
Thông số máy chủ:
- AMD EPYC 7413
- Bộ nhớ 8x MultiBitECC 3200 MHz 16384 MB
- Supermicro H12SSL-CT
- Intel XL710 40GBe
- Ubuntu 20.04.3 LTS 5.4.0-84-gen
Các Server được kết nối trực tiếp với nhau thông qua cáp quang. Không có công tắc.
Ví dụ
máy chủ1# iperf -s
máy chủ2# iperf -c máy chủ1 -i 1 -t 120
[ ID] Băng thông truyền khoảng thời gian
[ 3] 0,0- 1,0 giây 1,39 GB 12,0 Gbit/giây
[ 3] 1,0- 2,0 giây 1,00 GByte 8,61 Gbit/giây
[ 3] 2,0- 3,0 giây 1,03 GB 8,88 Gbit/giây
[ 3] 3,0- 4,0 giây 1,04 GB 8,92 Gbit/giây
[ 3] 4,0- 5,0 giây 1021 MB 8,56 Gbit/giây
[ 3] 5,0- 6,0 giây 1,05 GB 9,01 Gbit/giây
[ 3] 6,0- 7,0 giây 1,02 GB 8,78 Gbit/giây
[ 3] 7,0- 8,0 giây 1,02 GB 8,74 Gbit/giây
[ 3] 8,0- 9,0 giây 1,01 GB 8,69 Gbit/giây
[ 3] 9,0-10,0 giây 1,02 GByte 8,75 Gbit/giây
[ 3] 10,0-11,0 giây 1,05 GB 9,03 Gbit/giây
[ 3] 11,0-12,0 giây 1015 MB 8,51 Gbit/giây
[ 3] 12,0-13,0 giây 1,02 GB 8,72 Gbit/giây
[ 3] 13,0-14,0 giây 1014 MB 8,51 Gbit/giây
[ 3] 14,0-15,0 giây 974 MByte 8,17 Gbit/giây
[ 3] 0,0-15,0 giây 15,6 GB 8,92 Gbit/giây
Trên internet, tôi tìm thấy hướng dẫn điều chỉnh hiệu suất chính thức từ AMD và một cái gì đó từ fastdata.es.net
Họ đề nghị thực hiện một số cài đặt hệ thống nhất định như thay đổi bộ điều khiển CPU và bộ đệm tcp.
Tôi đã thực hiện các thay đổi tương ứng và chỉ cải thiện được 1Gbit/s.
Khi tôi kiểm tra tốc độ xung nhịp của CPU, xung nhịp của CPU luôn giảm xuống khoảng 400MHZ khi chạy iperf.
Bất kỳ đề xuất nào về lý do tại sao iperf gửi CPU ở chế độ ngủ hoặc làm cách nào tôi có thể cải thiện tốc độ truyền tcp của một luồng đơn? Chạy nhiều luồng tcp sử dụng băng thông tốt hơn nhưng không phải là trường hợp sử dụng của chúng tôi.
Cảm ơn