Rambo-cache van Intel Xe GPU's: hoe werkt het?

Tijdens zijn presentatie in 2019 over de toekomst van Intel Xe-architectuur maakte Raja Koduri melding van een type geheugen dat Intel "Rambo Cache" heeft gedoopt en dat is een van de belangrijkste onderdelen van Intel Xe. Maar wat is precies de Rambo Cache en wat is het nut ervan? We leggen het je uit.

Hoe maken we er enorme aantallen van GPU chiplets efficiënt met elkaar communiceren? We hebben een geheugen nodig om het intercomwerk te doen en daar komt de Rambo Cache om de hoek kijken. We leggen uit hoe het werkt en wat zijn functie is.

Rambo-cache van Intel Xe GPU's

Rambo Cache als verschil tussen Xe-HP en Xe-HPC

Rambo Cache Situatie

Zoals te zien is op de Intel-dia, is de Rambo Cache zelf een chip met daarin een geheugen, dat exclusief in de Intel Xe-HPC zal worden gebruikt voor communicatie tussen de verschillende tegels / chiplets. ​ Terwijl de Intel Xe-HP tot 4 verschillende tegels ondersteunt, verwerkt de Intel Xe-HPC een veel grotere hoeveelheid data, waardoor deze extra geheugenchip nodig is als communicatiebrug voor extreem complexe configuraties in termen van de hoeveelheid data. GPU-chiplets, of tegels zoals Intel ze noemt.

Rambo Cache XEMF

De Rambo Cache wordt tussen meerdere Intel Xe-HPC Compute Tiles geplaatst om de communicatie daartussen te vergemakkelijken. Compute Tiles zijn niets meer dan Intel Xe GPU's, maar gespecialiseerd voor high-performance computing, dus de klassieke vaste functie-units in GPU's zullen niet in de Intel Xe-HPC aanwezig zijn omdat ze niet worden gebruikt bij high-performance computing.

De Rambo Cache zal echter ongekend zijn in de rest van de Intel Xe, vooral die welke niet gebaseerd zullen zijn op verschillende chips zoals de Intel Xe-LP en Intel Xe-HPG. In het specifieke geval van de Intel Xe-HP lijkt het erop dat met 4 chiplets de Rambo Cache niet nodig is vanwege het feit dat Interposer voldoende bandbreedte biedt om de verschillende chiplets die erop zijn gemonteerd te communiceren.

Het doel is om de ExaFLOP te bereiken

Intel Xe 7nm

We weten dat de limiet met betrekking tot het aantal chiplets op een interposer 4 GPU's is, maar vanaf een hoger aantal is dit het geval wanneer de interconnectie op basis van een EMIB-interposer niet langer voldoende bandbreedte biedt voor communicatie, waardoor een element nodig is dat de toegang tot het geheugen en dat is waar de Rambo-cache zou komen, omdat het Intel in staat zou stellen een complexere GPU te maken dan de maximale 4 chiplets die het met de EMIB kan bouwen.

Het doel? Een hardware kunnen maken die op een gecombineerde manier 1 PetaFLOP van geweld of met andere woorden 1000 TFLOPS kan bereiken. Een prestatie die veel hoger is dan de GPU's die we op pc hebben, maar we hebben het niet over een GPU voor pc maar over hardware die is ontworpen voor supercomputers, met als doel de ExaFLOP-mijlpaal te bereiken, namelijk 1000 PetaFLOPS en dus 1 miljoen TeraFLOPS.

De grote zorg van hardware-architecten om dit te bereiken is het energieverbruik, vooral bij gegevensoverdracht, meer berekeningen, meer gegevens en meer gegevens verplaatsen meer energie. Daarom is het belangrijk om de gegevens zo dicht mogelijk bij de processors te houden en hier komt de Rambo Cache om de hoek kijken.

De Rambo-cache als cache op het hoogste niveau

Intel Architectuur Xe Hotchips (11)

Als we meerdere kernen hebben, of we het nu hebben over een CPU of een GPU, en we willen dat ze allemaal toegang hebben tot hetzelfde geheugen, zowel op adresserend als fysiek niveau, dan is een cache op het laatste niveau nodig. De "geografische" locatie binnen de GPU is net voor de geheugencontroller maar na de privécaches van elke kernel.

GPU's hebben tegenwoordig ten minste twee cacheniveaus, het eerste niveau heeft geen shader-eenheden en is meestal verbonden met texture-eenheden. Het tweede niveau wordt in plaats daarvan gedeeld door alle elementen van een GPU. In dit geval zijn ze uw interconnectiepad om te communiceren, toegang te krijgen tot de meest recente gegevens en dit alles om de VRAM-controller niet te verzadigen met verzoeken ernaar.

Maar er is een extra niveau: als we verschillende complete GPU's met elkaar hebben verbonden onder hetzelfde geheugen, dan is een extra cachegeheugen nodig dat de toegangen tot alle geheugens groepeert. Intel's Rambo Cache is Intel's oplossing om de toegang van alle GPU's die samen de Ponte Vecchio vormen, te verenigen.