Sách trắng của HP trên bộ điều hợp NetXtreme II của QLogic (fka Broadcom) của họ , bao gồm các NIC cụ thể mà tôi đang kiểm tra, tuyên bố (trang 7) rằng hiệu suất gói nhỏ của chúng cho các gói lên tới 256 byte / gói là trên 5.000.000 gói / giây.
Trong các thử nghiệm của tôi với một ứng dụng mà tôi đã vô hiệu hóa tất cả quá trình xử lý ngoại trừ phần nhận UDP đơn thuần, tôi chỉ có thể đạt tới 120.000 gói / giây. Các gói được phân phối đều trên 12 nhóm multicast.
Tôi nhận thấy rằng có một lõi (trong số 12 lõi mỗi lõi trên 2 ổ cắm) có tải tăng dần khi tôi tăng tốc độ gửi UDP và đạt tối đa khoảng 120.000 . Nhưng tôi không biết cốt lõi đó đang làm gì và tại sao. Đây không phải là nút cổ chai đơn trong ứng dụng của tôi, bởi vì tôi không chạy một phiên bản ứng dụng nào cho tất cả các nhóm phát đa hướng hoặc 12 trường hợp xử lý mỗi nhóm 1 phát đa hướng. Vì vậy, nút cổ chai không phải là ứng dụng nhận của tôi.
MSI được bật (được xác minh qua chế độ xem "tài nguyên theo loại" trong trình quản lý thiết bị ) và RSS cũng được bật trong cài đặt NIC, với 8 hàng đợi. Vì vậy, những gì đang bám vào một lõi? Tất cả các tính năng giảm tải của NIC hiện đang được bật, nhưng tắt chúng không giúp ích được gì.
Vì vậy, nút cổ chai có thể ở đâu?
Chi tiết hệ thống:
- ProLiant BL460c Gen9
- Intel Xeon E5-2670 v3 (2 x 12 lõi)
- HP FlexFoven 10Gb 2 cổng 536FLB NIC
- Windows 2012 R2