Passei algum tempo pesquisando sobre InfiniBand e percebi que, para entendê-lo, precisava escrever um par cliente/servidor do zero. Descobri que é possível fazer isso em Python! O pacote rdma-core do Linux fornece todos os comandos InfiniBand necessários com o pyverbs. Aqui está um exemplo simples de escrita e leitura RDMA.
Depois de criar o equivalente a um socket no InfiniBand (um "Par de Filas"), os pares precisam trocar informações (por exemplo, uma chave para acessar a memória). Isso geralmente é feito com TCP. Mas TCP me dá dor de cabeça, então eu simplesmente usei gist.github.com/charlesfrye/fd…mazenamento remoto de chave-valor). https://t.co/PPqVohm7Nl
O código está aqui - para leitura, comentários e experimentação. Ele funciona na plataforma Modal e utiliza nosso recurso experimental de cluster RDMA. Entre em contato para obter acesso se estiver interessadogist.github.com/charlesfrye/fd… ou treinamento acelerados por RDMA. https://t.co/2pZWAU9spB

