Перейти к содержимому

Why 2 GPUs ≠ 2× Performance | PCIe, NVLink & GPU Topology — #2

Momen Walied - مؤمن وليد

0:00 / 0:00

Why 2 GPUs ≠ 2× Performance | PCIe, NVLink & GPU Topology — #2

141 просмотр · 10 дней назад
Momen Walied - مؤمن وليد
762 подписчика
141 просмотр · 10 дней назад
في الفيديو التاني من سلسلة How to Build Distributed AI Systems هنبدأ بتجربة حقيقية على Kaggle باستخدام 2 GPUs، وهنسأل سؤال بسيط: ليه لما نزود عدد الـGPUs من 1 ل 2، الأداء مش بيتضاعف؟ عشان نفهم الإجابة، هننزل تحت مستوى PyTorch ونبص جوه ال Multi-GPU system نفسه. هنفهم إزاي torchrun بيشغّل multiple processes، وإيه الفرق بين RANK وLOCAL_RANK وWORLD_SIZE، وإزاي كل process بتترابط مع GPU مختلفة. بعد كده هندخل لل hardware layer ونفهم: PCIe وPCIe lanes وGen4 x16 PCIe Controller وRoot Complex إزاي ال data بتتحول ل PCIe transactions وTLPs الفرق بين PCIe وNVLink GPU Topology وقراءة nvidia-smi topo -m معنى PHB / PIX / PXB / NODE / SYS / NVLink NUMA Domains وليه مكان الـGPU جوه السيرفر بيفرق ليه ال physical topology ممكن تبقى bottleneck في distributed training وفي الآخر هنرجع لنفس السؤال: لو ال hardware مجرد paths بتنقل الـdata... مين بينظم فعليًا الـcommunication بين الـGPUs؟ وده اللي هندخل فيه في الفيديو الجاي: NCCL. #DistributedAI #distributedsystems #pytorch #gpu #nncl #deeplearning #machinelearning #aiinfrastructure #pcie #nvlink #ddp