Remote Direct Memory Access ( RDMA ) on laitteistoratkaisu, joka tarjoaa suoran pääsyn toisen tietokoneen RAM -muistiin nopeaa verkkoa käyttämällä. Tämän pääsyn avulla voit käyttää etäjärjestelmään tallennettuja tietoja käyttämättä molempien tietokoneiden käyttöjärjestelmien työkaluja. Se on suuren kaistanleveyden, matalan latenssin tiedonsiirtomenetelmä, ja se on erityisen hyödyllinen suurissa rinnakkaisissa laskentajärjestelmissä - klustereissa .
RDMA on toteutettu erilaisissa protokollissa, kuten Virtual Interface Architecture , InfiniBand , iWARP , RoCE [1] , Intel Omni-Path .
RDMA:n laitteistototeutus mahdollistaa nollakopiointimenetelmän käyttöönoton verkoissa. Kun dataa siirretään RDMA:n avulla, tarpeettomat kopiot sovelluksen ja käyttöjärjestelmän puskureiden välillä eliminoidaan; vastaavasti keskusprosessorin työn määrä vähenee, välimuistin kuormitus vähenee, kontekstikytkinten määrä vähenee ja itse siirrot voidaan suorittaa samanaikaisesti muun hyödyllisen työn kanssa. Kun sovellus lähettää luku- tai kirjoituspyynnön etämuistiin, tiedot voidaan toimittaa suoraan verkkosovittimeen, mikä vähentää tiedonsiirron viivettä.
Yksinkertaisia yksisuuntaisia RDMA-primitiivejä käytettäessä lähettäjälle ei ilmoiteta lähetyksen valmistumisesta. Usein, kun siirto on valmis, sovitin asettaa jonkin arvon muistiin, mutta lähettäjän on luettava tämä lippu silmukassa havaitakseen tällaisen muutoksen. Round-robin-kyselyt kuluttavat suorittimen aikaa ja lisäävät muistia ja latenssia järjestelmissä, joissa on erittäin paljon solmuja.