พื้นฐานแฟบริก InfiniBand · InfiniBand · เทคโนโลยี · เอกสารประกอบ · CodingBox
CodingBox เอกสารประกอบ

พื้นฐานแฟบริก InfiniBand

ฟาบริกของ InfiniBand มีพฤติกรรมต่างจากเครือข่าย Ethernet ในแบบที่มีผลตอนวินิจฉัยลิงก์ หน้านี้ครอบคลุมแนวคิดที่วิศวกรออปติกส์ต้องเจอ ได้แก่ ตัวจัดการซับเน็ต การควบคุมการไหลแบบไม่มีการสูญเสีย โทโพโลยี และลิงก์ที่มีปัญหาจะแสดงอาการอย่างไร

ตัวจัดการซับเน็ต

ทุกซับเน็ตของ IB มี ตัวจัดการซับเน็ต (Subnet Manager, SM) ที่ทำงานอยู่หนึ่งตัว มันค้นพบพอร์ตและสวิตช์ทั้งหมด กำหนดตัวระบุภายใน (LID) คำนวณตารางฟอร์เวิร์ด และตั้งค่าตารางเหล่านั้นลงในสวิตช์ทุกตัว เมื่อลิงก์กระพริบ SM จะตรวจกวาดฟาบริกใหม่อีกครั้ง — ออปติกที่อยู่ในระดับก้ำกึ่งจึงไม่ได้แค่ทำให้ลิงก์เดียวหลุดไป แต่ยังกระตุ้นเหตุการณ์จัดเส้นทางใหม่ทั่วทั้งฟาบริกที่ทุกคนสังเกตเห็นได้

ไม่มีการสูญเสียด้วยเครดิต

ลิงก์ IB ไม่ทิ้งแพ็กเก็ตเลยในการทำงานปกติ: ฝั่งส่งจะส่งได้ก็ต่อเมื่อฝั่งรับประกาศเครดิตบัฟเฟอร์ไว้แล้วเท่านั้น ความแออัดจึงเกิดเป็นแรงดันย้อนกลับแทนที่จะทิ้งข้อมูล และลิงก์ที่เสื่อมสภาพ (ข้อผิดพลาดสัญลักษณ์ไต่สูงขึ้น, การแก้ไขของ FEC) จะทำให้งานทั้งหมดที่พึ่งพาลิงก์นั้นช้าลงไปด้วย — ปัญหา “ลิงก์เดียวที่ช้า” ในการดำเนินการแบบกลุ่ม

โทโพโลยี

  • Fat-tree (Clos) — มาตรฐานทั่วไป: สวิตช์ลีฟเชื่อมต่อโฮสต์ สวิตช์สไปน์เชื่อมต่อลีฟ โดยมีอัปลิงก์มากพอที่จะไม่เกิดการบล็อก ลิงก์ส่วนใหญ่เป็นออปติกส์แบบลีฟ–สไปน์
  • Dragonfly+ และรูปแบบ torus ปรากฏในระบบขนาดใหญ่ที่สุดเพื่อประหยัดสวิตช์และสาย
  • การออกแบบแบบปรับให้เหมาะกับเรลสำหรับ AI จะวาง NIC ของแต่ละ GPU ไว้บน “เรล” ที่แยกจากกันของฟาบริก เพื่อให้ GPU ที่มีลำดับเดียวกันข้ามเซิร์ฟเวอร์ต่าง ๆ ห่างกันแค่หนึ่งฮอป — ดูโทโพโลยีฟาบริกของ GPU

RDMA และ GPUDirect

แอปพลิเคชันใช้ verbs ของ RDMA เพื่อย้ายข้อมูลระหว่างหน่วยความจำของโหนดโดยไม่ต้องให้ CPU คัดลอกข้อมูล; GPUDirect RDMA ขยายกลไกนี้ไปถึงหน่วยความจำ GPU ผลที่ตามมาคือความผิดพลาดของฟาบริกจะปรากฏให้แอปพลิเคชันเห็นเป็นอาการค้างหรือหมดเวลาในการดำเนินการแบบกลุ่ม ซึ่งมักเกิดขึ้นนานก่อนที่ผู้ดูแลระบบจะเห็นพอร์ตดาวน์เสียอีก

ลิงก์ที่มีปัญหาจะมีอาการอย่างไร

อาการในฟาบริกสาเหตุระดับฟิสิคัลเลเยอร์ที่ควรตรวจสอบ
ข้อผิดพลาดสัญลักษณ์ไต่สูงขึ้น / บล็อกที่ FEC แก้ไขบนพอร์ตเดียวMPO สกปรก, กำลัง Rx อยู่ในระดับก้ำกึ่ง, เลนเสื่อมสภาพ
ลิงก์ค้างอยู่ที่ความกว้างหรือความเร็วต่ำกว่าที่ควรFEC ไม่ตรงกัน, โมดูลไม่ประกาศอัตราส่งตามที่คาดไว้
พอร์ต “Not supported”, ไม่มีลิงก์ข้อมูลระบุตัวตนของโมดูลไม่ถูกจดจำ — การล็อกผู้ผลิต
SM ตรวจกวาดซ้ำ ๆมีลิงก์ที่กระพริบอยู่ที่ไหนสักแห่ง — หาด้วยตัวนับข้อผิดพลาดต่อพอร์ต

ทำตามแผนที่ปัญหาและวิธีการวินิจฉัยตามปกติ: ระดับสัญญาณ → ทำความสะอาด → เปลี่ยนตัว → สาย

ใน CodingBox

อ่านโมดูล IB ที่ต้องสงสัยบนโต๊ะทดสอบ: ค่า Rx/Tx และไบอัสต่อเลนบนหน้าจอ DDM จะบอกได้ว่าเลนใดเลนหนึ่งของโมดูล SR4/DR4 กำลังจะตายหรือไม่ และฟิลด์ข้อมูลระบุตัวตนจะบอกได้ว่าฟาบริกจะยอมรับตัวที่เปลี่ยนใหม่หรือไม่

เลเยอร์โปรโตคอล คู่คิว และหน้าที่ของตัวจัดการซับเน็ตแบบละเอียด: โปรโตคอลและทรานสปอร์ตของ IB; การเดินสายฟาบริกแยกตามรุ่นและระยะส่ง: การเดินสาย IB


หากพบข้อมูลที่ไม่ถูกต้องหรือข้อผิดพลาดในบทความนี้ ให้เลือกข้อความส่วนนั้นแล้วกด Ctrl+Enter เพื่อ