Nvidia diskuterar ARM-förvärv – överenskommelse klar inom några veckor

Skrivet av Petterk:

@Fulci: Mali är den bästa GPU du kan licensiera. Sen kan du vända på frågan, vad ska Nvidia med ARM till när de gör sina egna processorer (arkitekturer) och grafikprocessorer. Värdet i ARM är den IP de licensierar ut, inte ISA.

Kom på att Samsung licenserade AMD GPU IP 2019.

"Samsung to integrate custom AMD Radeon graphics IP into future SoCs for mobile applications"
https://news.samsung.com/global/amd-and-samsung-announce-stra...

Skrivet av Petterk:

@Fulci: Mali är den bästa GPU du kan licensiera. Sen kan du vända på frågan, vad ska Nvidia med ARM till när de gör sina egna processorer (arkitekturer) och grafikprocessorer. Värdet i ARM är den IP de licensierar ut, inte ISA.

ISA minst lika mycket värt för ARM som IP.

Orsak: operativsystem, bibliotek, kompilatorer, etc är alla designade mot en specifik ISA, inte IP. Hade inte ISA varit så viktigt hade x86 varit ersatt sedan länge.

Det som gör ARM64 bättre än x86_64 är ISA, inte existerande IP. ARM64 gör det möjligt att på ett effektivt sätt designa mikroarkitekturer med extremt hög IPC, det är betydligt svårare för x86_64 p.g.a. ISA.

ARM64 är för närvarande mycket bättre än RISC-V då ARM64 är långt mycket mer moget när det kommer till OS-stöd, kompilatorstöd etc. LLVM har seglat upp som en av de mest kritiska projektet för grundläggande infrastruktur och ARM64-stödet där är (tack vare Apple, Google, Facebook m.fl.) lika bra som x86_64! Tyvärr är ARM64 och x86_64 lite ensamma om riktigt top-notch stöd.

Skrivet av Petterk:

Är dags att sova för mig, så ska inte kommentera så mycket, men detta svarar jag på.

PowerVR i Intel GMA500, GMA600 och GMA3600 körde Direct3D ganska nyligen, TBR-arkitektur ska inte vara något problem. Nvidia har ju dock redan drivrutiner för Windows och har ändå inte sparkat igång Windows 10 för någon Jetsonbräda. AMD har snackat om att licensiera sin GPU IP och har Samsung som licensee redan, men du lär ändå inte se ARM+AMD med Windows rullandes utan i bästa fall får du Android och Linux-drivare. Microsoft själva har ju inte ens gått helhjärtat in på ARM-server, och där behöver du inte ens stöd för någon grafikadapter alls, eller möjligen någon Aspeed ihop med Matrox G200.

Att kunna köra Direct3D är inte samma sak som att man har effektiv stöd för något. Det går att köra x86 kod på ARM, men det är inte effektivt. Det går faktiskt att använda varenda DX12 finess via CPUn (d.v.s. software rendering), men det är brutalt ineffektivt.

Vulkan (och Metal) har specifikt stöd för TBDR, något som DX12 saknar (och har inte funnits i DX sedan D3D i DX3 och dess retained mode stöd).

https://gpuopen.com/learn/vulkan-renderpasses/
"Among the features proposed by our mobile members was the renderpass — an object designed to allow an application to communicate the high-level structure of a frame to the driver. Tiling GPU drivers can use this information to determine when to bring data on and off chip, whether or not to flush data out to memory or discard the content of tile buffers and even to do things like size memory allocations used for binning and other internal operations. This is a feature that Mantle did not have, and is not part of Direct3D® 12 either."

PowerVR GPUerna har haft stöd för någon HLSL-version sedan SGX535 (den version Intel använde i vissa Atom SoC), men det är inte samma sak som att ha effektivt stöd för DX12. En GPU som använder sig av TBDR kan absolut implementera DX12 APIet, men det kommer inte på något sätt vara optimalt.

ARM64 CPU + Nvidia GPU skulle därför erbjuda en betydligt mer optimal Windows upplevelse än t.ex. Mali eller Adreno. Alternativet är att göra som Apple: gå all in på TBDR. Kommer vara spännande att följa MacOS här, är första gången någon med rejäla resurser går all in på TBDR utanför mobiler. Framtida Metal-versionen lär helt designas för TBDR, Vulkan måste ju hantera båda varianterna och brukar sälla bli fullt lika optimalt om man ska vara mer generell.

Skrivet av medbor:

Vi har ju redan konkurrens från ARM på PC via Apple?

Apple var aldrig med i leken.
Fjolårets mid-segment prestanda för nästa generations top-segment priser

Skämt åsido så är deras senaste "iMac" rätt okej sett till pris/prestanda, men deras mobila departement är ett rätt stort skämt i min mening. Och även om Apple utvecklar en kompetent ARM-CPU för sina telefoner och nu kommande MacBooks så kör dom fortfarande iOS/MacOS, vilket per automatik gör att dom faller bort för mig (av diverse anledningar, skulle behöva skriva en uppsats som förklarar varför).

Sedan så ser jag inte att Apple skulle på något vis licensiera sina CPU'er heller för den delen, vilket då i praktiken inte alls innebär konkurrens då du blir helt låst i deras egna ekosystem om du vill ha en "Apple CPU". Med AMD/Intel/Nvidia kan du aktivt välja mellan olika Windows versioner, Linux distros, Android o.s.v. - Med Apple är det MacOS eller 'there's the door'.

Skrivet av Yatagarasu:

Apple var aldrig med i leken.
Fjolårets mid-segment prestanda för nästa generations top-segment priser

Skämt åsido så är deras senaste "iMac" rätt okej sett till pris/prestanda, men deras mobila departement är ett rätt stort skämt i min mening. Och även om Apple utvecklar en kompetent ARM-CPU för sina telefoner och nu kommande MacBooks så kör dom fortfarande iOS/MacOS, vilket per automatik gör att dom faller bort för mig (av diverse anledningar, skulle behöva skriva en uppsats som förklarar varför).

Sedan så ser jag inte att Apple skulle på något vis licensiera sina CPU'er heller för den delen, vilket då i praktiken inte alls innebär konkurrens då du blir helt låst i deras egna ekosystem om du vill ha en "Apple CPU". Med AMD/Intel/Nvidia kan du aktivt välja mellan olika Windows versioner, Linux distros, Android o.s.v. - Med Apple är det MacOS eller 'there's the door'.

Jag vet inte riktigt hur du menar här. Jag känner mer än en person som köper Macbook enbart för att köra windows på för att de tycker hårdvaran är värd pengarna. Det är absolut möjligt att köra andra OS och det är inget jag tror de kommer ta bort. Självklart är inget perfekt och jag kan hålla med om att priserna är höga, men PC är så splittrat och svårt att veta vad man får, en Mac håller ju iaf 5 år eller så i min erfarenhet.

Jag menar inte här att jag är en av dom, men har man den disponibla inkomsten kan man väl göra så om man vill. Min poäng var i alla fall att plattformen verkligen inte är så nedlåst som det verkar enligt vissa här...

Skrivet av Yoshman:

Vad skulle ändras menar du? ARM32 och ARM64 är just det: proprietär teknik som kontrolleras av ett enda företag. De råkar sedan ha en affärsmodell där denna proprietära teknik licensieras till i princip vem som helst bara de hostar upp pengar för licensavgiften.

Att det går till ett företag som har en historik av att låsa in användare och tvinga folk att betala överpris. Hade inte sagt något om ett företag som har lite till ingen marknadsnärvaro inom mobila området köpt upp dom tex IBM.

Du har nog större förtroende för Nvidia än vad jag har!

Enligt den här artikeln från Nikkei, planerar Softbank att behålla andelar i ARM även efter en affär med Nvidia eller en publik lansering. Ett par av optionerna är att Softbank behåller del av Nvidia efter uppköp, eller att bli en majoritetsägare i ett sammanslaget bolag.
https://asia.nikkei.com/Business/SoftBank2/SoftBank-to-mainta...

ARM var nog mycket ett prestigeköp för Masayoshi Son och Softbank. De vill nu få tillbaka pengarna det kostade, men kanske kan ta att de inte få någon större vinst på det genom att behålla en viss ägardel i framtiden. Blir intressant att se vart detta leder och om det blir något efterspel.

Skrivet av medbor:

Jag vet inte riktigt hur du menar här. Jag känner mer än en person som köper Macbook enbart för att köra windows på för att de tycker hårdvaran är värd pengarna. Det är absolut möjligt att köra andra OS och det är inget jag tror de kommer ta bort. Självklart är inget perfekt och jag kan hålla med om att priserna är höga, men PC är så splittrat och svårt att veta vad man får, en Mac håller ju iaf 5 år eller så i min erfarenhet.

Jag menar inte här att jag är en av dom, men har man den disponibla inkomsten kan man väl göra så om man vill. Min poäng var i alla fall att plattformen verkligen inte är så nedlåst som det verkar enligt vissa här...

Du har ju alltid alternativet att köra bootcamp/dualboot om man säger så. Problemet uppstår ju dock om dom går över till ARM64, jag ser inte att det kommer vara lika enkelt att köra Windows på sin Mac som det idag är på deras Intel maskiner - Två helt olika arkitekturer, och av tidigare erfarenhet så har Apple inte visat allt för mycket medvilja när det kommer till bakåtkompabilitet (tänker spontant när dom 'relativt nyligen' (2018?) yxade 32-bits stöd i MacOS - Vilket effektivt dödade en STOR del av äldre appar/program om inte utvecklarna skrev om sina program själva).

Sedan är ju pris relativt till inkomst/plånbok, såklart.
Men skulle inte kalla det "prisvärt" någonstans. T.ex. så säljer Lenovo sin "Lenovo Flex 14 2-in-1" (14" FHD Touchscreen, Ryzen 5 3500U , 12GB RAM, 256GB NVMe SSD) för ca. 550-600$ (ca. 7500-8000kr).
Sätter man det i perspektiv med Apple's motsvarande MacBook i ren prestanda så landar vi på 23,245 kr (8th Gen i7, 16Gb RAM, 256Gb SSD - Sedan sämre Intel Iris Graphics 645 än AMD's 3500U Vega 8).

Även om man skulle ställa MacBook'en mot en motsvarande "Ultrabook", likt Dell XPS 13 eller HP Spectre, så är det fortfarande sämre specs i macen för samma pris (med råge i Spectren's fall, då den kommer med 10th gen i7, 4K touchscreen, dedikerad GPU och x4 mängden lagring).

Skrivet av Yatagarasu:

Du har ju alltid alternativet att köra bootcamp/dualboot om man säger så. Problemet uppstår ju dock om dom går över till ARM64, jag ser inte att det kommer vara lika enkelt att köra Windows på sin Mac som det idag är på deras Intel maskiner - Två helt olika arkitekturer, och av tidigare erfarenhet så har Apple inte visat allt för mycket medvilja när det kommer till bakåtkompabilitet (tänker spontant när dom 'relativt nyligen' (2018?) yxade 32-bits stöd i MacOS - Vilket effektivt dödade en STOR del av äldre appar/program om inte utvecklarna skrev om sina program själva).

Sedan är ju pris relativt till inkomst/plånbok, såklart.
Men skulle inte kalla det "prisvärt" någonstans. T.ex. så säljer Lenovo sin "Lenovo Flex 14 2-in-1" (14" FHD Touchscreen, Ryzen 5 3500U , 12GB RAM, 256GB NVMe SSD) för ca. 550-600$ (ca. 7500-8000kr).
Sätter man det i perspektiv med Apple's motsvarande MacBook i ren prestanda så landar vi på 23,245 kr (8th Gen i7, 16Gb RAM, 256Gb SSD - Sedan sämre Intel Iris Graphics 645 än AMD's 3500U Vega 8).

Även om man skulle ställa MacBook'en mot en motsvarande "Ultrabook", likt Dell XPS 13 eller HP Spectre, så är det fortfarande sämre specs i macen för samma pris (med råge i Spectren's fall, då den kommer med 10th gen i7, 4K touchscreen, dedikerad GPU och x4 mängden lagring).

Yxade 32-bit var antagligen en förberedelse för detta bytet eftersom deras arm chip bara stödjer 64 appar på iphone sedan länge

Macbook kommer inte vinna på specs, men vad är andrahandsvärdet och hur många är trevliga att använda även efter 5-10 år? Finns det ens så gamla ultrabooks att jämföra med där liknande modeller fortfarande finns i samma serie? Vad sitter det för ssd och hur många thunderbolt har dom?

Kortsiktigt vinner pc oftast sett till specs ja, men en macbook (även en sämre modell) är ofta användbar och ’rapp’ även om specs är lite gamla.

@Yoshman: ISA är inte värt 50 miljarder USD när de kan fortsätta att licensiera ARM, och har ju som sagt inget som helst med Windows på Nvidia att göra så där finns det ju inget att diskutera. Jag förstår att det finns värde i ISA, men det värdet finns ju tack vare att de själva utvecklar IP de säljer, så att de själva kan driva på utvecklingen och besitta kompetensen som behövs för detta.

Att rendera DX som TBR i hårdvaran kan för övrigt göra GPUn effektivare, Nvidia gör ju redan detta. Största problemet med Windows på Mali, Vivante, VideoCore eller IMG är ju dock att drivrutinerna skulle ta år att mogna. Det är egentligen inte så stort problem för desktop, där hade de kunnat börja ge stöd för diskreta kort från AMD och Nvidia på desktop-system med ARM64, precis som finns på Power (Nvidia) och och andra system i desktop-formfaktor.

Fortsätter de licensiera av ett fristående ARM kan de fortsätta ta del av allt arbete som läggs på kompilatorer av alla andra. Skulle de stänga ner eller uppfattas som konkurrenshämmande skulle mycket av detta arbete riktas mot RISC-V, Power och MIPS, eller t.o.m. x86-64 (AMD och VIA kan ju bistå med custom-CPUer). Förstår att du kanske vill att de satsar på RISC-V, men det är ju knappast i Nvidias intresse.

Skrivet av Petterk:

@Yoshman: ISA är inte värt 50 miljarder USD när de kan fortsätta att licensiera ARM, och har ju som sagt inget som helst med Windows på Nvidia att göra så där finns det ju inget att diskutera. Jag förstår att det finns värde i ISA, men det värdet finns ju tack vare att de själva utvecklar IP de säljer, så att de själva kan driva på utvecklingen och besitta kompetensen som behövs för detta.

Fortsätter de licensiera av ett fristående ARM kan de fortsätta ta del av allt arbete som läggs på kompilatorer av alla andra. Skulle de stänga ner eller uppfattas som konkurrenshämmande skulle mycket av detta arbete riktas mot RISC-V, Power och MIPS, eller t.o.m. x86-64 (AMD och VIA kan ju bistå med custom-CPUer). Förstår att du kanske vill att de satsar på RISC-V, men det är ju knappast i Nvidias intresse.

Gör detta tankeexperiment: om ISA inte är viktigt borde inte ARMs värde ändras nämnvärt om de inte längre fick behålla all IP men den var i stället tvingad till att köra MIPS64 eller PowerPC. Självklart är ARM64 värt väldigt mycket då både Apple och ARM själva visat att det är en ISA som kan ge långt bättre prestanda än x86_64 och även bättre prestanda än deras egen ARM32 på samma CPU.

Det var inte alls en självklarhet att ARMs satsning på att designa en ny ISA från scratch skulle vara en vettig idé. Det visade sig i slutändan vara värt det då ARM dels själva insåg hur kritisk programvara är så de la själva väldigt mycket resurser på ARM64 initialt för att via andra vilken potential denna ISA hade. MIPS verkar aldrig ha insett detta och för PowePC insågs det försent, PPC klarade sig bra inom embedded länge då PPC (ISA, inte specifik IP) hade en rad fördelar över x86 i realtidsapplikationer.

Om artikeln vi läser stämmer är ju uppenbarligen Nvidia intresserade av ARM, varför annars ens föra en diskussion? Finns ett par anledningar, men Nvidia är precis som Qualcomm faktiskt ett företag som backar RISC-V på högsta nivån.

Nvidia använder redan RISC-V i sina GPUer som kontrollprocessor och man har forskningsprojekt på RISC-V för att använda RISC-V i prestandakritiska delar.

Så varför visar Nvidia då överhuvudtaget intresse för ARM? Enda rimliga jag kan komma på är att om Nvidia äger ARM löser de en av huvudanledningarna att de själva kör RISC-V i kontrollprocessor: de lär ju inte behöva betala licensavgifter till sig själva vilket gör det möjligt för dem att använda ARM rakt igenom, även där licenskostnaden annars skulle göra det orimligt.

Finns ju riktigt billiga ARM-kretsar, t.ex. Arduino kompatibla mikrokontrollers för ~$10, men finns redan RISC-V baserade mikrokontrollers med liknande prestanda och egenskapar för $3-4.

Enda rimliga orsak jag kan se att Nvidia ändå ser ett intresse är att de genom att kontrollera ARM kan få tillgång till en, för dem som ägare, lika billig ISA som RISC-V fast med långt mer mogen programvara och en ISA (ARM64) som redan bevisats kunna prestera bättre än någon tidigare ISA. RISC-V bedöms kunna ge liknande fördelar som ARM64, men man vet inte om det stämmer innan någon faktiskt visat att så är fallet. Men ser hoppfullt ut på mikrokontrollsidan, där verkar RISC-V vara helt i nivå med ARM vad det gäller energieffektivitet. Det betyder inte självklart att samma gäller på high-end, jämför ARM32 och ARM64, bara den senare fungerar väl att skala upp till riktigt high-end (och orsaken ligger utanför 32 vs 64-bit).

Skrivet av Petterk:

Att rendera DX som TBR i hårdvaran kan för övrigt göra GPUn effektivare, Nvidia gör ju redan detta. Största problemet med Windows på Mali, Vivante, VideoCore eller IMG är ju dock att drivrutinerna skulle ta år att mogna. Det är egentligen inte så stort problem för desktop, där hade de kunnat börja ge stöd för diskreta kort från AMD och Nvidia på desktop-system med ARM64, precis som finns på Power (Nvidia) och och andra system i desktop-formfaktor.

Det Nvidia gör från Maxwell och framåt är inte samma sak som TBDR GPUer gör. Om så vore fallet säger du i praktiken att de som jobbade med Vulkan och Metal inte vet vad de håller på med, de hävrad ju trots allt att man måste anpassa APIet till dessa GPUer för att de ska kunna vara riktigt effektiva.

Testet som RealWorldTech på Maxwell gjorde hade en stor brist: man testade enbart väldigt stora trianglar (de täckte halva bilden) och alla trianglar renderas ovanpå varandra.

Har laddat ner programmet och ändrat så att 10x10 trianglar renderas i en grid där de bara delvis överlappa. Resultatet visar då rätt tydlige att GPUn jag kör på, RTX2070, bara försöker hålla sig till "tiles" hyfsat. Är inte längre alls så att en "tile" renderas klart innan man börjar på nästa utan verkar kunna vara upp mot ~10 tiles som renderas samtidigt. Det är fortfarande en optimering då man får bättre cache-hit-rate än att inte alls dela upp det i tiles. Men det är helt klart ett annat mönster jämfört med "riktiga" TBDR GPUer, de måste jobba sig igenom tile-för-tile då hela rastreringssteget är designat runt detta!

Vulkan/Metal tillåter en del rastreringsvarianter som drar full nytta av att t.ex. Z-buffer ligger i SRAM på TBDR-korten inom en tile. Det går att definiera render-pipeline i Vulkan/Metal att helt uppföra sig som en "vanlig" Z-buffer, så man kan därför stödja t.ex. DX12, men prestanda blir rejält lidande i det fallet! Så Mali/Adreno/PowerPR fungerar under Windows/DX12, men i det läget blir de inte mer effektiva än AMD/Intels iGPUer och de är inte speciellt imponerande...

Har som sagt ingen aning hur sannolikt det är att Nvidia faktiskt köper ARM. Men för ARM64 on Windows skulle det finnas ett par fördelar om man fick till en riktigt bra SoC med ARM64 CPU + Nvidia GPU. Jetson-korten är allt annat än optimal som SoC för Windows, de är enbart riktade på inbyggda system där man behöver GPU, datorseende och liknande. Nvidias egna CPU-design är kass som generell CPU.

Har dock ingen aning om Nvidia är så sugna på att ge sig in i laptopmarknaden, om de köper ARM lär orsaken på kort sikt ligga i att kapa åt sig större andel i datacenter. De lär också se värde i att fortsätta ARMs nuvarande affärsmodell, annars lär köpet inte bli vettigt.

@Yoshman: Fast det är just att Nvidia skulle ge sig själva fördelar som skulle skada ARM och få kunderna att titta efter annat.

Någon kostandsfördel mellan RISC-V och Cortex-M mikrokontrollers finns knappast idag för den delen, Arduino är ju bra mycket dyrare än sina konkurrenter och är ju inte en SoC utan en bräda där mikrokontrollern kostar en bråkdel.

Skrivet av Petterk:

@Yoshman: Fast det är just att Nvidia skulle ge sig själva fördelar som skulle skada ARM och få kunderna att titta efter annat.

Någon kostandsfördel mellan RISC-V och Cortex-M mikrokontrollers finns knappast idag för den delen, Arduino är ju bra mycket dyrare än sina konkurrenter och är ju inte en SoC utan en bräda där mikrokontrollern kostar en bråkdel.

Fast hur är det att ge sig själv fördelar om man själv använder ARM? Att inte behöva betala licensavgift till sig själv är väl rätt självklart, eller? Enda fördelen det ger Nvidia är att de då skulle kunna köra ARM rakt av i alla lägen, även de fall där RISC-V idag är vettigare p.g.a. licensavgifter.

Vore ju vansinnigt av Nvidia att på något sätt göra saker som skrämmer bort dagens ARM-kunder, det skulle ju bara minska värdet på deras köp.

Den andra fördelen Nvidia (eller vem som nu köper ARM) har är att de kan styra vad ARM primärt ska fokusera sina IP-investeringar runt. Idag får ju Nvidia lägga egna resurser på det, äger man ARM kan de skippa den biten och bara se till att ARM-delen har de IP-delar Nvidia behöver i sin portfölj.

Är väl just mikrokontrolldelen jag har svårast att se hur ARM framöver ska kunna konkurrera med RISC-V, det oavsett ägare. Den delen lär ju också vara den som lär intressera Nvidia minst då de inte alls opererar där idag.

Angående Arduino:det är ett API/ramverk som är fritt, inte någon specifik CPU-arch. Det finns en rad olika mikrokontrollers som stödjer Arduino och det som vissa kanske sätter likhetstecken mot är AVR (men det är bara en av många CPU-arch som kan användas). Använder själv numera bara Arduino ihop med ESP8266 och ESP32, den senare använder FreeRTOS under huven och implementerar Arduino APIet ovanpå det (går att använda FreeRTOS anrop om man vill, det är ett krav om man vill använda båda CPU-kärnorna i en ESP32). Har lagt en beställning på den RISC-V baserade mikrokontrollern (75 kr hos Elfa) bara för att testa lite, den fungerar också ihop med Arduino (vilket verkar vara rekommenderad plattform).

@Yoshman: Är det inte en konkurrensfördel eller vad menar du?

Skrivet av Petterk:

@Yoshman: Är det inte en konkurrensfördel eller vad menar du?

Är det något du tror de som idag använder ARM skulle ta det som anledning att byta plattform? Vad skulle de byta till?

Poäng: ser inte hur någon skulle kunna ta illa vid sig att det företag som äger ARM (vilket det än må vara) kan använda ARMs IP/ISA utan att betala licenspengar till sig själv. Bara politiker skulle göra något så korkat för att dra upp BNP...

Skrivet av Yoshman:

Är det något du tror de som idag använder ARM skulle ta det som anledning att byta plattform? Vad skulle de byta till?

Poäng: ser inte hur någon skulle kunna ta illa vid sig att det företag som äger ARM (vilket det än må vara) kan använda ARMs IP/ISA utan att betala licenspengar till sig själv. Bara politiker skulle göra något så korkat för att dra upp BNP...

Fast det är klart det blir ett problem om konkurrenterna inte kan vara lika flexibla med vilken IP de väljer för att kostnaden då rusar iväg.

Priser och licensvillkor kan absolut snedvrida konkurrensen.

Skrivet av Petterk:

Fast det är klart det blir ett problem om konkurrenterna inte kan vara lika flexibla med vilken IP de väljer för att kostnaden då rusar iväg.

Priser och licensvillkor kan absolut snedvrida konkurrensen.

Jag tror inte Nvidia skulle köpa ARM bara för att själva slippa licensavgiften

@medbor: I så fall måste det drivas som ett fristående bolag som del av en koncern och tidigare har Nvidia fusionerat alla uppköp.