Intel ger sig in på grafikkortsmarknaden och anställer Raja Koduri

Permalänk
Datavetare
Skrivet av hACmAn:

Off:
@Yoshman
Vet du hur mycket svårare det blir med Termaldesign om man skulle lägga till SMT på t.ex AMD's eller Nvidia's stora chipp? Samt IO på bussarn?
//Nyfiken frågar.

Ingen aning. Nvidia och AMD har sinsemellan rätt olika lösning, så verkar helt klart finnas mer än ett sätt att flå den katten.

Nvidias lösning verkar hyfsat rättfram (men rätt sparsamt med information kring den, Intel och AMD är klart mer öppna på denna punkt). Kan ha misstolkat hur deras scheduler fungerar, i vissa lägen låter det faktiskt som en SM kan köra två "warp" per cykel vilket i så fall klassificerar den som "SMT". Oavsett, Nvidias back-ends är 32-wide vilket matchar bredden på en "warp", så är enskild warp kan i teorin köra en instruktion per cykel.

Intel kan i alla fall köra upp till fyra trådar i en EU per cykel (en tråd här motsvarar Nvidia "warp" eller AMD "wave-front", d.v.s. ett gäng "stream-cores"). Men är möjligt att fullt ut nytta hela back-end redan från två trådar (en instruktion kan bli en eller flera micro-ops, är micro-ops som back-end jobbar med), så ur den aspekten verkar Intels design mest dynamisk i att utnyttja de resurser som finns (vilket inte är så mycket i Intels fall...). Intels design kan också köra en instruktion från samma tråd varje cykel, men så vitt jag förstår är det inte möjligt att köra mer än en instruktion per cykel från en och tråd (detta verkar gälla alla dessa GPU-designer så kanske detta är hemligheten till att kunna skala på bredden???).

AMD har en schemaläggare för fyra back-ends (back-end i en GPU är egentligen en stor SIMD ALU). Varje cykel väljer schemaläggaren en "wave-front" för dispatch. Då en wave-front har 64 lanes (är 64 "stream-cores") och varje back-end är 16 lanes bred körs samma instruktion i fyra cykler för att hantera alla 64-lanes.

Så en CU kan köra upp till fyra "wave-front" per cykel, dock kan varje enskild wave-front bara kör en instruktion per fyra cykler.

Rent praktiskt är en CU hårt uppdelad i fyra 16-lanes breda enheter som var för sig kan köra exakt en "wave-front" per fyra cykler. Schemaläggaren jobbar med en back-end per cykel, så en ny instruktion startas varje cykel men tar fyra cykler för varje enskild back-end.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Masyve:

Väntade mig en artikel om vilken aktör han skulle ta roder hos, det var snabba puckar haha.

Tror att AMD och Raja har samarbetat med Intel och att allt detta gjorts med flit och planering inför deras satsning tillsammans.

Visa signatur

[i7 6700k @4500|Asus Z170 Pro Gaming|Corsair Vengeance DDR4 3200MHz XMP |EVGA GQ 1000W Hybrid Modular 80+|MSI GeForce GTX 1080|Windows 10 Pro Swe|Aoc 28-4K|SSD Samsung 850 evo 250 Gb|