Innosilicon Fantasy I: arkitektur och funktioner

När vi pratar om GPU:er i datorer brukar vi nämna tre amerikanska företag: AMD, NVIDIA och, i mindre utsträckning, Intel. Vad skulle hända om vi berättade att det dyker upp grafikkort i Kina som använder sig av brittisk teknologi i deras GPU, men monterad och tillverkad i Kina? I den här artikeln kommer vi att beskriva arkitekturen hos Innosilicon Fantasy I.

Innosilicon Fantasy I

Att prata om Imaginations PowerVR-arkitekturer är nästan som att prata om en grekisk tragedi. Sedan starten och i olika generationer har vi sett det på flera olika system som SEGA Dreamcast, ST Micros KYRO-grafikkort och till och med PlayStation Vita. Deras poäng gemensamt? Autentiska kommersiella misslyckanden trots den höga kvaliteten på dess GPU. Men de hade turen att vara grafikarkitekturen för processorerna Apple enheter, tills de från Cupertino bestämde sig för att gå på egen hand och "designa" sin egen grafikarkitektur ett tag.

Imagination Technologies Fantasy I PowerVR

Perioden av oenighet mellan Apple och Imagination ledde återigen till att britterna försökte licensiera sina grafikarkitekturer till tredje part. För närvarande, om vi tittar på panoramat både i smarta enheter och i PC-världen, kommer vi att se hur Imagination och dess PowerVR verkar ha försvunnit.

Dess frånvaro i Android världen har utnyttjats av andra deltagare, som t.ex ARM sig med Mali eller Qualcomm med sin Adreno. Detta har fått dem att flytta till andra marknader, som att den kinesiska tillverkaren Innosilicon, känd för sina ASICs för gruvdrift, var den som för inte så länge sedan presenterade sin Fantasy 1. Det är det första grafikkortet baserat på en PowerVR sedan det tidiga Kyro 2000-talet , men kan de tävla mot NVIDIA och AMD i PC-utrymmet?

Vad är kakelrendering?

I slutet av 1990-talet fick grafikkortsdesigners kämpa för prestanda med ett vanligt problem, brist på bandbredd. Grafikprocessorer jämfört med hur de är idag var väldigt enkla. Den första delen av 3D-pipelinen, före rastrering, beräknades av CPU. Den andra delen i förändringen genomfördes av grafikkortet, vilket krävde stora mängder bandbredd som dåtidens minne inte kunde ge utan skenande kostnader.

Kakel Rendeirng Rörledning

Lösningen som föreslogs av Imagination var renderingen av Tiles, som fortfarande är grunden för sin arkitektur, så även idag Fantasy I när geometrin har beräknats i själva GPU:n läggs ytterligare steg till jämfört med en konventionell GPU. En kakelrenderare sorterar geometrins position i RAM baserat på dess position i scenen precis innan rastreringen för att skapa individuella visningslistor för varje bricka som den sedan kommer att lösa en efter en under renderingsprocessen.

Fördelar

På grund av den lilla storleken på varje block eller tile, gör detta att det kan lösas utan att behöva komma åt VRAM, eftersom de använder internminne för detta. Detta gör den också idealisk för lat rendering som ofta använder flera bildbuffertar för att beräkna ljussättningen av scenen. Dess andra fördel är att eftersom det är viktigt att känna till elementens position i scenen för att generera den rumsliga datastrukturen för Ray Tracing, är det lättare att implementera strålspårning i denna typ av arkitektur.

Nackdelar

Detta har dock två nackdelar. Den första är att den kräver mer komplex hårdvara än en konventionell GPU för att uppnå samma prestanda och därför kommer vi alltid att få lägre prestanda för ett chip av samma storlek, den andra är att förekomsten av minne med hög hastighet som GDDR eller HBM eliminerar sin fördel i en speldator. Det är därför den här typen av arkitektur har blivit standard i fickenheter, där minnesbandbredden av konsumtionsskäl är begränsad.

PowerVR B-Series, den grafiska arkitekturen i Fantasy I

För att förstå arkitekturen hos Innosilicons Fantasy I-grafikkort, och för övrigt också vad som finns inuti Apples processorer för dess enheter, måste vi ta en rundtur i den nuvarande arkitekturen av Imagination och även om vi vet att den nyligen har presenterats C-serien, även känd som Photon, för närvarande använder de mest avancerade enheterna Imaginations B-serie som arkitektur.

Innosilicon Fantasy I GPU

Kärnan i B-serien

Organisationen av var och en av dessa kärnor är som följer:

Innosilicon Fantasy I PowerVR

  • Fyra USC-block, Unified Shader Cluster, där var och en har upp till 128 ALU i FP32 för totalt 512 per kärna. Med tanke på förmågan att utföra en addera och multiplicera instruktion i en enda klockcykel, är den kapabel att utföra 1024 operationer per klockcykel.
  • 8 texturenheter, var och en kan producera 4 texel, för totalt 32.
  • 16 ROPS.
  • 1 tesselationsenhet.
  • 1 rasterenhet.

Var och en av kärnorna är exklusivt ansvarig för en bricka eller block på skärmen oberoende av resten. Därför har var och en av dem sina egna raster- och tessellationsenheter. Förutom att bära ett litet internt minne för att lösa bildbufferten inuti det och minska påverkan på systemets RAM. Detta minne används dock uteslutande för ROPS och trots fördelarna med GPU:n, på grund av de enorma texturkartor som används idag, är det nödvändigt att komma åt VRAM för att få texturdata.

Fantasy I, den första chiplet-GPU:n

Den stora nyheten med Imagination B-serien som används i Fantasy I är det faktum att det är den första GPU:n som är uppbyggd av chiplets, det vill säga olika chips som fungerar tillsammans som en enda processor. För att göra detta skickas skärmlistan till den första av de fyra chiplets som utgör GPU:n, medan de andra tre är underordnade. Det är en lösning väldigt lik den som AMD har föreslagit i patent med RDNA 3 och som säkerligen kommer att vara vanlig i alla GPU:er av denna typ i framtiden.

Den här lösningen skiljer sig dock på en specifik punkt, användningen av rendering av brickor för att utföra det som är förrendering och för att kunna ha flera skärmlistor inte innan rastrering, utan från början av 3D-pipeline. Konceptet är inget annat än att rendera scenen utan shaders eller texturer av något slag och från datorpipeline och inte grafiken. Detta gör att du kan organisera flera listor med kommandon och inte bara en som gör att du kan utnyttja det stora antalet kärnor under förrendering. Denna process utförs automatiskt när kommandoprocessorn för den första GPU:n har läst skärmlistan.

Detta gör att vi kan ha flera skärmlistor för samma scen som kan organiseras av de olika kärnorna. Detta är hur man uppnår att med en konfiguration av 2 chiplets är var och en ansvarig för ena halvan av skärmen, med 4 av dem fördelas de på en fjärdedel.

Vad har Innosilicon tillfört ditt grafikkort?

Allt arbete har dock inte gjorts av folket i Imagination, utan Innosilicon har varit den som har designat resten av grafikkortet, lagt till PCB-designen och valt resten av materialen. Där det som sticker ut mest är användningen av GDDR6- eller GDDR6X-minnen beroende på vilken modell som ska användas, stöd för DisplayPort 1.5 och HDMI 2.1, men specifikt användningen av dess Innolink-teknik, som har utformats för att internt kommunicera de fyra chiplets som utgör en del av GPU:n.

Innolink Chiplets Fantasy I

Specifikt har vi två olika varianter, Typ A-samtal kan nå 5 TFLOPS kraft i FP32 , den har ett minnesgränssnitt med 128-bitars GDDR6X VRAM på 19 Gbps med en bandbredd på 304 GB/s. Typ B, å andra sidan, har två kompletta GPU:er och består därför av totalt 8 chiplets och dubbla antalet

Innosilicon Fantasy I är inte för din PC

Verkligheten är att du inte kommer att kunna köpa Innosilicons Fantasy I-grafikkort för att använda dem i din speldator, och du skulle inte heller vara intresserad, eftersom Imagination designar sina arkitekturer för fickenheter där Windows är inte det dominerande operativsystemet och det är det inte heller DirectX, eftersom vi hittar en rad brister. Det är ingen mening att lägga till funktionalitet till din hårdvara som din klient inte kommer att använda och den största klienten av dessa GPU:er, om än i hemlighet, är Apple och specifikt dess Metal API.

Tarjetas Gráficas Innosilicon

Ironiskt nog är PowerVR så knuten till Metal, API:et som används i iOS, macOS och resten av Apples operativsystem, att Tim Cooks folk i slutändan har skrivit på ett avtal med Imagination så att de kan fortsätta utveckla GPU:n integrerad i sina processorer. Så i den nuvarande Apple A15, M1 och dess Pro och Max-varianter är det som finns inuti en PowerVR. Motsvarigheten till detta är att de från Cupertino har skapat den allmänna idén att de är så allsmäktiga att de kan skapa all hårdvara i ett system och tävla om resurser mot hela världen. Verkligheten är väldigt annorlunda.

Det faktum att en GPU som består av 4 chiplets når 6 TFLOPS när ingångsintervallet för PC redan når det kan förvåna oss, men vi måste komma ihåg att det är en design designad för mobila processorer, men med målet att nå molnberäkningar och får inte användas i en speldator.

Designad för datacenter och cloud computing

Låt oss inte glömma att på servrar är det normalt att använda flera processorer och att vi har fler och fler servrar baserade på smartphone-processorer. Vi kan inte heller glömma tendensen att virtualisera ett grafikkort i molnet för flera klienter, till sin natur kräver Fantasy I ingen virtualisering, var och en av de chiplets som utgör den kan fungera som en liten GPU.

Servidor ARM

Så vi har en arkitektur som härrör från mobiler och skalar upp till datacenter, men utan att gå igenom området som är PC:n. Det betyder att den saknar en rad funktioner som idag är väsentliga för PC-spel. Det är därför, trots att utseendet på Fantasy I kan påminna om det hos en Gaming GPU eller att det inte ser seriöst ut med de färgerna, så är de verkligen för molnberäkning, även om det är en första generation. Står vi inför framtiden där grafikkortet inte är i händerna på användaren, utan i servern?

Hur som helst måste Kina som en rivaliserande supermakt i USA vara helt oberoende ur en teknisk synvinkel och det innebär att man skapar sina egna lösningar utanför de klassiska från NVIDIA, Intel och AMD, som vi minns är amerikanska företag.