Chipontwerper Graphcore onthult nieuwe ai-processor op 7nm-procedé

De Britse chipontwerper Graphcore heeft een nieuwe processor onthuld. De Colossus MK2 is bedoeld voor het uitvoeren van ai-workloads. Hij beschikt over 1472 cores en 8832 parallelle threads. Het bedrijf start in het vierde kwartaal van 2020 met leveringen op grote schaal.

De Colossus MK2, door het bedrijf ook wel GC200 genoemd, is een zogeheten ipu die wordt gebruikt voor het uitvoeren van ai-berekeningen. De chip is voorzien van 59,4 miljard transistors en wordt gemaakt op een 7nm-procedé van TSMC. De GC200 beschikt hiermee over 1472 cores en 8832 parallelle threads. De ipu heeft daarnaast 900MB sram in de processor zelf. Het geheel wordt gehuisvest in een die van 823mm².

Graphcore Colossus MK2Graphcore Colossus MK2

De Graphcore GC200-chip (links) en het M2000-systeem

Voor het geheugen ondersteunt Graphcore daarnaast extra 'exchange-memory'. Hiermee kan iedere ipu voorzien worden van maximaal 448GB geheugen met een maximale theoretische bandbreedte van 180TB/s. Graphcore claimt verder dat de GC200 ongeveer acht keer zo goed presteert als zijn voorganger: de Colossus MK1. Die laatste werd in 2018 aangekondigd en werd gemaakt op een 16nm-procedé.

Graphcore meldt dat de nieuwe ipu wordt geleverd in een M2000-systeem. Deze M2000 bevat vier Colossus MK2-chips en heeft een 1U-behuizing. Dat systeem moet goed zijn voor een petaflops aan rekenkracht. Gebruikers kunnen tot 64.000 van deze ipu's aan elkaar koppelen voor een totale rekenkracht tot zestien exaflops. Het bedrijf levert ook een rack-scale 'IPU-POD64', die bestaat uit 16 M2000-machines voor een totaal van 64 Colossus MK2-chips. Deze Pod-systemen worden geplaatst in een standaard 19"-serverrack.

Voor communicatie tussen de verschillende ipu's bevat ieder M2000-systeem een GC4000-gatewaychip. Het bedrijf noemt dit 'ipu-fabric', wat functioneert als een interconnect tussen verschillende systemen, met een bandbreedte van 2,8Tbit/s per M2000-systeem. Volgens Graphcore kan dit lineair worden opgeschaald tot 'verscheidene petabits per seconde' bij gebruik van vele ipu's.

Het systeem gebruikt standaard koperen of optische osfp-connectors voor ipu-fabric. M2000-systemen kunnen hiermee individueel met elkaar worden verbonden. Bij grotere configuraties wordt gebruikgemaakt van tunneling-over-ethernet. Daarbij is ook het gebruik van standaard qsfp-interconnects en 100Gbit/s-ethernet-switches mogelijk.

Bedrijven kunnen de M2000-systemen en IPU-POD64 vooruitbestellen, meldt Graphcore. Leveringen op grote schaal starten in het vierde kwartaal van 2020. Het bedrijf maakt geen prijzen bekend.

Graphcore MK2 ipu fabric
Het ontwerp van ipu-fabric

Door Daan van Monsjou

Nieuwsredacteur

15-07-2020 • 12:02

22

Reacties (22)

22
20
9
3
0
9
Wijzig sortering
Hoe verhoudt zo'n processor zich tegenover een GPU? Juist GPU's zijn zeer goed voor berekeningen in neurale netwerken omdat je er zoveel tegelijk kunt doen.
Ik heb even zitten zoeken, maar kom op het volgende citaat:
"Nigel Toon, a semiconductor veteran who is Graphcore‘s CEO, said the MK2 has similar flexibility to Nvidia’s A100 when it comes to doing both training and inference workloads, but the IPU can do such work faster because it doesn’t rely on large batch files like a GPU does." Bron

Dit geeft mogelijk antwoord op een deel van de vragen?

[Reactie gewijzigd door Robber op 22 juli 2024 21:38]

Ik heb heel kort even door de developer docs gelezen, en volgens mij is het grootste verschil hoe de verschillende cores met elkaar communiceren. (disclaimer: ik heb er maar 5 minuten doorheen gebladerd dus pin me niet vast op de details).

In een GPU heb je 1 bak geheugen, en alle cores doen hun ding in dat globale geheugen (kort door de bocht, ze hebben wel wat lokaal ram maar het resultaat gaat altijd terug naar het globale geheugen).

In deze processor werkt dat anders, er wordt een graaf opgebouwd van hoe de neuronen met elkaar verbonden zijn, elke neuron wordt door 1 core uitgevoerd en het resultaat wordt daarna doorgestuurd naar de volgende neuronen in de graaf.

Dus in plaats van dat er een heleboel cores werken aan 1 stuk geheugen, is dit meer een soort netwerk van cores die werk aan elkaar doorgeven.

[Reactie gewijzigd door Aaargh! op 22 juli 2024 21:38]

The NVIDIA Quadro RTX 8000 features 72 RT cores for real-time ray tracing and 576 Tensor Cores for AI enhanced workflows, resulting in over 130 TFLOPS of deep learning performance

Een M2000 doet 1PFLOPS, gedeeld door 4 voor 1 GC200 dus ongeveer 2.5x wat een RTX8000 kan doen.
Wat ik er zo aan zie: je kunt er VEEL meer geheugen aan koppelen als nu op Gpu's beschikbaar is en, maar dat is een vermoeden, Gpu's hebben ook allemaal logica erin zitten die voor dit type processors onzinnig is (rasterizer, scheduler, video encoding/decoding, filtering/scaler) dus efficienter gebruik van de chip.
8832 parallelle threads op deze processor is ook nog een stap boven het aantal compute units/cudacores van Gpu's (GTX Titan heeft er 2688), als je die twee met elkaar kunt vergelijken
Mja is GDDR/HBM2 niet veel sneller dan DDR4 ? Voor de AI applicaties waar GPU geheugensnelheid belangrijk was (image classifiers ofzo) is dit misschien toch niet zo nuttig ?
supersnel geheugen heb je niks aan als je te weinig ervan hebt...
Natuurlijk ... Ik zie ze ook niet snel 256 of 512 GB GDDR6 Ram ofzo op GPU's proppen dus
er is wellicht een markt voor.
Precies, geheugen bandbreedte maakt veel uit.

GPU's zijn zo opgezet dat ze latency kunnen verbergen. Weinig cache en gddr/hbm2 zijn best ver weg (in clock cycli).

Deze chip heeft wbt geheugen latency een extreem voordeel met die 900MB sram.
De echte vraag is hoe verhoud zo'n processor zich tengenover Google's TPU of Amazon's inferentia. Wat verder onduidelijk is, is dit een inference only chip of juist voor training?
Ik zou het nog sterker stellen: De architectuur van een GPU is volledig juist om efficiënt neurale netwerken te berekenen. Er worden een hoop voorstellen gedaan zoals bijvoorbeeld FPGA's, maar GPU's zullen per transistor gewoon het meest opleveren.

Het enige waar je bij een toegewijde chip zinnig op kunt bezuinigen is functionaliteit die een neuraal netwerk niet nodig hebt. Vaak wordt de markt dan evenwel te klein om de concurrentiestrijd vol te houden.
Voor de liefhebber, een artikel die de vorige generatie IPU architectuur uitgebreid bespreekt. Hierin komt ook kort de verschillen met normale CPUs en GPUs aan de orde (pagina 9 en 10).

https://arxiv.org/abs/1912.03413
You can use your preferred AI framework, such as TensorFlow or PyTorch, and from this high-level description, Poplar will build the complete compute graph, capturing the computation, the data and the communication. It then compiles this compute graph and builds the runtime programs that manage the compute, the memory management and the networking communication, to take full advantage of the available IPU hardware.
Zou dat echt zo vlekkeloos werken als ze hier beschrijven of moet je handmatig layers gaan omschrijven? Wordt het naar ONNX gexporteerd ofzo? Is alle code portable of zijn nieuwe addities constant kapot totdat er een patch komt van ze?
Klink heel erg als een chip die de GPU oplossing als nuttig ziet maar inzet op dedicated hardware om nog meer prestaties per U uit een rack the kunnen persen. Immers een GPU heeft dat lokale en erg snelle sram niet, en ook de 1petaflop die zo'n ding haalt kunnen GPU's op dit moment nog niet voorelkaar krijgen.

Ik denk dat er heus wel bedrijven zullen zijn die hier gebruik van willen maken maar ik denk ook dat de markt voor dit soort chips nog zo nieuw is dat er op dit moment geen goede methode is om de prestaties van 1 chip met die van een ander te vergelijken.
Ik gok er op dat we binnen een paar jaar een benchmark tool zo als we ook voor supercomputers hebben zullen zien voor deze markt zodat men de prestaties van de verschillende chips tegen elkaar kan afzetten om een redelijk idee te krijgen van hetgeen de chip voor een organisatie kan betekenen.

Op dit moment vraag ik me vooral af of de 64.000 chips opstelling ooit gebruikt zal worden of dat dit puur een theoretisch verhaal zal blijven waar niemand ooit de ongetwijfeld miljoenen uit zal willen geven om zo'n systeem te bouwen. Ik vraag me zelfs af of er in totaal genoeg chips gemaakt zullen worden om ooit in de toekomst zo'n systeem te bouwen. Ik heb echt totaal geen idee hoe groot of klein de markt is voor dit soort chips. Ik neem aan dat er redelijk wat vraag naar is als je na de eerste versie een verbeterde versie uitbrengt maar goed IBM maakt ook nog steeds mainframes en dat is ook niet echt iets dat men in grote aantallen verkoopt vandaag de dag.
Goed nieuws, zat hier al op te wachten. Misschien dan alleen ook even kijken of ik mn 1050ti moet upgraden ivm bottleneck enzo.
Wat is nog steeds niet begrijp is hoe je dan de AI aan de praat krijg. Mijn enige verdieping in deze materie zijn een paar textbooks en wat ik daaruit begrijp is dat voor enkele veel voorkomende dingen, zoals gezichtsherkenning, patroonherkennign e.d. optimale algorimes bestaan en deze zijn zover ontwikkeld dat de simpelste teelfoons ze al hebben. Zodra het iets ingewikkelder wordt is het toch een software bottleneck en niet de hardware.
Zo dan! 59,4 miljard transistors! Wie en hoe checked of deze allemaal correct zijn gebouwd/ontworpen/werken voor dat alles in productie gaat?
(ik ben een enorme n00b wat dit betreft maar vind het machtig interessant!)
De AMD Epyc 7742 heeft ook ruwweg 32 miljard transistoren, dus zo gek veel is 60 miljard niet. Overigens gaat het om een AI product, als er hier en daar een transistor raar reageert is het geen ramp want er is geen hoge precisie nodig.
Wat ik nou weleens zou willen weten: wat zijn op dit moment de grootste toepassingen in AI? Wat gebeurt er in de praktijk allemaal mee dat bedrijven er zoveel geld in steken? Want als ik dit zo eens lees gebeurt er héél veel op dit vlak waar het grote publiek geen weet van heeft.

Natuurlijk, we kennen allemaal de gezichtsherkenning/surveillance toepassingen. We hebben ook al eens gehoord van data mining (al is mijn kennis daarvan vooral theoretisch en weet ik niet zozeer wat er in de praktijk mee gebeurt) en denken een idee te hebben waar google/alphabet geld mee verdient.
Spraak en gezichtsherkenning zijn de voorbeelden die iedereen wel kent.
De veelgeprezen zelfrijdende auto is er ook een.
Maar er zijn ook medische toepassingen, variërend van beeldherkenning in röntgenfoto's (of CT / MRI).
Bij het onderzoek naar een coronavaccin wordt volop met AI gewerkt, net als in veel ander medicijn onderzoek.
In de wiskunde wordt nog steeds gezocht naar bewijs voor bepaalde stellingen, daar kan AI soms ook aan bijdragen.
Simulaties van complexe chemische processen, kernfusie, klimaatonderzoek: overal waar ingewikkelde dingen gesimuleerd worden, wordt (vaak) ook AI toegepast.
Zelf werk in in een project waar een mobiele robot leert hoe hij zich in een omgeving met voetgangers moet gedragen.

Op dit item kan niet meer gereageerd worden.