Kiến thức cơ bản về fabric InfiniBand
Một fabric InfiniBand hoạt động khác với một mạng Ethernet theo những cách có ý nghĩa khi bạn chẩn đoán một liên kết. Trang này trình bày các khái niệm mà một kỹ sư quang học sẽ gặp: subnet manager, điều khiển luồng không mất gói, cấu trúc mạng và cách một liên kết lỗi lộ ra.
Subnet manager
Mỗi subnet IB có một Subnet Manager (SM) đang hoạt động. Nó phát hiện mọi cổng và switch, gán các định danh cục bộ (LID), tính toán bảng chuyển tiếp và nạp chúng vào từng switch. Khi một liên kết chập chờn, SM sẽ quét lại toàn bộ fabric — vì vậy một thiết bị quang cận biên không chỉ làm mất một liên kết, nó còn kích hoạt các sự kiện định tuyến lại trên toàn fabric mà ai cũng nhận thấy.
Không mất gói nhờ credit
Liên kết IB không bao giờ làm rớt gói tin trong hoạt động bình thường: bên gửi chỉ truyền khi bên nhận đã báo có credit bộ đệm. Vì vậy tắc nghẽn tạo ra áp lực ngược thay vì loại bỏ dữ liệu, và một liên kết suy giảm (lỗi symbol tăng dần, FEC phải sửa nhiều) sẽ làm chậm toàn bộ công việc phụ thuộc vào nó — vấn đề “một liên kết chậm” trong các phép toán tập thể.
Cấu trúc mạng
- Fat-tree (Clos) — chuẩn mực phổ biến: switch leaf nối với host, switch spine nối với leaf, với đủ số uplink để không nghẽn. Phần lớn liên kết là quang học leaf–spine.
- Biến thể Dragonfly+ và torus xuất hiện trong các hệ thống lớn nhất để tiết kiệm switch và cáp.
- Thiết kế tối ưu theo rail cho AI đặt NIC của mỗi GPU trên một “rail” riêng của fabric, để các GPU có cùng rank trên nhiều server chỉ cách nhau một hop — xem Cấu trúc mạng fabric GPU.
RDMA và GPUDirect
Ứng dụng dùng các verb RDMA để di chuyển dữ liệu giữa bộ nhớ của các node mà không cần CPU sao chép; GPUDirect RDMA mở rộng điều này tới bộ nhớ GPU. Kết quả là một lỗi fabric sẽ hiện ra với ứng dụng dưới dạng một lần đứng khựng hoặc timeout trong một phép toán tập thể, thường rất lâu trước khi người vận hành thấy một cổng down.
Một liên kết lỗi trông như thế nào
| Triệu chứng trong fabric | Nguyên nhân lớp vật lý cần kiểm tra |
|---|---|
| Lỗi symbol tăng dần / số khối được FEC sửa trên một cổng | MPO bẩn, công suất Rx cận biên, làn đang suy giảm |
| Liên kết kẹt ở độ rộng hoặc tốc độ thấp hơn | lệch FEC, module không khai báo đúng tốc độ mong đợi |
| Cổng báo “Not supported”, không lên liên kết | thông tin nhận dạng module không được nhận diện — khóa nhà sản xuất |
| SM quét lại lặp đi lặp lại | có một liên kết đang chập chờn ở đâu đó — hãy tìm nó bằng bộ đếm lỗi theo từng cổng |
Hãy theo bậc thang chẩn đoán thông thường: mức tín hiệu → vệ sinh → thay thế → cáp.
Trong CodingBox
Hãy đọc một module IB bị nghi ngờ trên bàn thử: Rx/Tx và dòng phân cực theo từng làn trên màn hình DDM cho biết một làn của module SR4/DR4 có đang chết hay không, và các trường thông tin nhận dạng cho biết liệu fabric có chấp nhận một thiết bị thay thế hay không.
Các lớp giao thức, queue pair và chức năng của subnet manager một cách chi tiết: Giao thức & truyền tải IB; đấu cáp cho fabric theo thế hệ và cự ly: Đấu cáp IB.