Hvordan sammenligne riktig mellom AMD Stream-prosessorer og NVIDIA CUDA-kjerner


Beste svaret

AMD har lagt mer vekt på trådnivå-parallellitet. Den støtter 40 tråder under flyging per rørledning av GPU.

Nvidia har fokusert på bedre cacheytelse og tråd-trådkommunikasjon. For eksempel kan du sende data fra rørledning-1 til rørledning-2 direkte i en syklus ved hjelp av instruksjon om warp shuffle. Hvis du vil sende data fra rørledning-1 til rørledning-1024, må du bruke hurtigbuffer / delt minne som også er raskere enn Amd-motstykket.

For å lage en rettferdig referanse, ville jeg

  • øke antall arbeidsemner sendt til AMD GPU slik at de fyller rørledningene fullt ut
  • optimaliserer med warp shuffles etc for Nvidia.

For en direkte maskinvaresammenligning, hver serie GPUer må vurderes, og det ville være en veldig kompleks sammenligning med mange ting på papiret. Den beste måten å vite ytelse på er benchmarking.

Hvis det for eksempel er en N-body galaxy simulation benchmark, ville jeg ha flere tråder per masse i AMD og 1 tråd per masse i Nvidia. Da ville jeg optimalisert begge ved å bruke «flislegging» på raskt delt minne. Men på Nvidia vil jeg legge til et ekstra lag med «flislegging» ved hjelp av warp shuffles. Warp shuffles deler effektivt registerlagring med nabo-rørledninger slik at minneavhengigheten reduseres og ytelsen øker. Men det er bare CUDA. OpenCL er ikke plattformavhengig ved å handle noe potensial for ytelsesgevinst.

Svar

AMD selger for tiden prosessorer med alt fra 2 til 64 CPU-kjerner. Her er en liste over forskjellige AMD CPU / APU (APUer er det AMD kaller deres CPUer med integrert grafikk) produktlinjer og serier, og deres tilhørende kjernetall.

Merk at hver av disse produktlinjene inneholder flere forskjellige generasjoner og spesifikke modeller eller “SKUer” (lagerholdere) av CPU, så for eksempel er en Ryzen 7 1700 langsommere enn en Ryzen 7 3700X, selv om de begge er 8-kjernede Ryzen 7-prosessorer:

A-serien (lavt drevne APUer bygget på utdaterte og ineffektive «bulldozer» -arkitekturer. Vanligvis ikke verdt å kjøpe):

  • A4 – 2 kjerner
  • A6 – 2 kjerner
  • A8 – 4 kjerner
  • A9 – 2 kjerner
  • A10 – 4 kjerner
  • A12 – 4 kjerner

Athlon X-serien (som A-serien, men uten grafikken. Ikke kjøp.)

  • Athlon X2 – 2 kjerner
  • Athlon X4 – 4 kjerner

FX-Series (“bulldozer” CPUer I likhet med A-serien, men uten integrert grafikk, og litt raskere. Vanskelig å avkjøle tilstrekkelig. Vanligvis ikke verdt å kjøpe )

  • FX 4xxx – 4 kjerner
  • FX 6xxx – 6 kjerner
  • FX 8xxx – 8 kjerner
  • FX 9xxx – 8 kjerner

Athlon G-serien (billige APUer bygget på moderne «Zen» -arkitekturer med god integrert grafikk. Et godt low-end-alternativ, da hver av kjernene er mye raskere enn to bulldozer-kjerner)

  • (alle varianter) – 2 kjerner

Ryzen-serien (mellomstore til avanserte «Zen» -PCUer, med høy multicore-ytelse. Inkluderer også noen APUer med kraftig integrert grafikk – de med modellnavn som slutter på «G»)

  • Ryzen 3 – 4 kjerner
  • Ryzen 5 – 6 kjerner (4 kjerner for APUer)
  • Ryzen 7 – 8 kjerner
  • Ryzen 9 – 12 eller 16 kjerner
  • Ryzen Threadripper – 8 til 64 kjerner (beregnet på high-end arbeidsstasjon-PC-er)

EPYC-serien (server- og HPC / superdatamaskin «Zen» -Prosessorer. Kan brukes i stasjonære datamaskiner, men ikke ment for det)

  • EPYC – 8 til 64 kjerner

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *