Geri qayıt
DOCA GPUnetIO GPU ilə işləşən şəbəkə qarşılıqlı əlaqəsini NVIDIA proqram stekində birləşdirir
SiTech AI Team3 dəq oxu

DOCA GPUnetIO GPU ilə işləşən şəbəkə qarşılıqlı əlaqəsini NVIDIA proqram stekində birləşdirir

DOCA GPUnetIO CUDA nüvələrinə Ethernet, RDMA, Verbs və DMA əməliyyatlarını birbaşa idarə etmək və CPU-nu kritik yoldan uzaqlaşdırmaq üçün ümumi GDA-KI təminatı verir. İndi NCCL, NVSHMEM, UCX/NIXL və Holoscan tək bir implementasiyaya əsaslanır.

GPU ilə işləyən şəbəkə üçün ümumi təminat

DOCA GPUnetIO real vaxtda paketlərin emalı və məlumatların ötürülməsi üçün GPU-yə yönəlmiş şəbəkə SDK təbəqəsidir. O, GPUDirect RDMA, GPUDirect Async Kernel-Initiated (GDA-KI) və GDRCopy-ni birləşdirir ki, CUDA nüvələri Ethernet, RDMA, Verbs və DMA əməliyyatlarını birbaşa idarə etsin, CPU isə kritik yoldan uzaqlaşsın. NVIDIA-nın dediyinə görə, bu NVSHMEM, NCCL, Aerial 5G SDK, UCX/NIXL, NVQLink Holoscan Sensor Bridge, Holoscan Advanced Network Operator, DeepEP/HybridEP tərəfindən istifadə olunan birgə GDA-KI təminatıdır.

Açıq kod və SDK variantları

NVIDIA GPUnetIO-nu tam DOCA SDK super dəsti və daha yüngül, açıq kod Verbs-ə yönəlmiş implementasiya kimi təqdim edir. SDK versiyası Verbs, Ethernet, DMA və Comm Channel-i əhatə edir, açıq versiya isə tamamilə açıq transport istəyən çərçivələrə xidmət edir. Açıq implementasiya işə salınanda DOCA SDK-ni aşkar edir və əgər mühit dəyişəni düzgün yolu göstərsə, dlopen ilə seçilmiş bağlı funksiyaları çağırır; əks halda, müstəqil işlər. Hər iki forma cihaz yönəlmiş CUDA API-ni tətbiq edir ki, bu da GPU proqramlaşdırma modelini eyni saxlayır.

İdarəetmə yolu, məlumat yolu və API-lər

GPUnetIO tətbiqləri CPU idarəetmə yolu ilə başlayır: GPU və şəbəkə işə salınır, yaddaş bölünür, transport obyektləri yaradılır və deskriptorlar GPU yaddaşına köçürülür. doca_gpu_verbs_create_qp_hl kimi köməkçilər RDMA növbə cütünün yaradılmasını və qoşulmasını asanlaşdırır. GPU məlumat yolunda CUDA nüvələri WQE-ləri yerləşdirir, kart qapısını çağırır və lazım olarsa tamamlanma qeydlərini yoxlayır. Qapı zəngi rejimləri: CUDA yaddaşından MMIO yazıları, BlueFlame ilə kiçik növbələrdə aşağı gecikmə üçün tam WQE yazması və DGX Spark kimi birbaşa GPU-NIC bağlantısı olmayan sistemlər üçün CPU köməkci rejimi. Ethernet və RDMA Verbs üçün yüksək səviyyəli çağırışlar (doca_gpu_dev_verbs_put_signal, doca_gpu_dev_eth_txq_send) sinxronizasiyanı və qapı zəngi göndərilməsini nüvə, warp və ya blok səviyyəsində idarə edir. Aşağı səviyyəli primitivlər WQE hazırlanmasını, növbələrin göndərilməsini və tamamlanmaların yoxlanmasını təmin edir, lakin nüvə üçün təhlükəsiz deyil və tətbiq sinxronizasiyası tələb edir. Nümunələr açıq repozitoriyada və DOCA SDK-də var.

NCCL və NVSHMEM inteqrasiyaları

NCCL GIN cihaz tərəfini put, get, signal, wait və flush primitivlərini tətbiq edir. NCCL 2.27-dən etibarən GIN açıq kod GPUnetIO Verbs yolunu GDA-KI backend kimi istifadə edir: GIN əməliyyatları GPUnetIO çağırışlarına WQE hazırlanması, qapı zəngi sorğusu və tamamlanma yoxlanması üçün əks olunur. NVSHMEM 3.7 GPUnetIO transportunu əlavə etib ki, bu IBGDA strukturuna uyğundur və aşağı səviyyəli böyük hissəni GPUnetIO çağırışları ilə əvəz edir. O, GDA-KI və host tərəfindən işə salınan RDMA-nı dəstəkləyir ki, bunlar NVSHMEM_REMOTE_TRANSPORT=gpunetio və NVSHMEM_GPUNETIO_ENABLE_GDAKI=1 ilə seçilir. NVQLink GPUnetIO-ə əsaslanan GPU RoCE Transceiver operatorundan istifadə edir ki, bu da təxminən 2,6 mikrosaniyə minimal iki tərəfli gecikmə üçün IGX Thor-da Blackwell GPU və ConnectX-7 ilə işləsin.

Mənbələr: Nvidia Dev

SSiTech

SiTech — AI ilə gücləndirilmiş veb hazırlanması

Sürətli və müasir saytlar qurur, AI-ı real biznes proseslərinə gətiririk. Layihəniz və ya sualınız var? Kömək etməyə hazırıq.