2020 gjorde Apple ett djärvt drag; de dumpade Intel och gick över till deras proprietära kisel för att driva sina MacBooks. Även om övergången till ARM-arkitekturen från x86-designspråket höjde flera ögonbryn, har Apple bevisade att alla hade fel när MacBooks som drivs av Apple silicon bjöd på enastående prestanda per watt.
Enligt flera experter var övergången till ARM-arkitekturen en stor anledning till ökningen av prestanda/watt. Men den nya Unified Memory Architecture spelade också en avgörande roll för att förbättra prestandan hos den nya generationens MacBooks.
Så, vad är Apples Unified Memory Architecture, och hur fungerar det? Nåväl, låt oss ta reda på det.
Varför behöver din dator minne?
Innan du börjar med Apples Unified Memory Architecture är det viktigt att förstå varför primära lagringssystem som Random Access Memory (RAM) behövs i första hand.
Du förstår, en traditionell processor körs med en klockhastighet på 4 GHz under en turboladdning. Med denna klockhastighet kan en processor utföra uppgifter på en kvarts nanosekund. Lagringsenheter, som SSD och hårddiskar, kan dock bara leverera data till processorn var tionde millisekund – det är 10 miljoner nanosekunder. Det betyder att under tiden mellan det att processorn avslutar bearbetningen av data den arbetar med och den tar emot nästa sats med information, är den inaktiv.
Detta visar tydligt att lagringsenheter inte kan hålla jämna steg med processorns hastighet. Datorer löser detta problem genom att använda primära lagringssystem som RAM. Även om detta minnessystem inte kan lagra data permanent, är det mycket snabbare jämfört med SSD-enheter – det kan skicka data på så lite som 8,8 nanosekunder: oändligt mycket snabbare än de snabbaste SSD-enheterna just nu.
Denna låga åtkomsttid gör det möjligt för CPU: n att ta emot data snabbare, vilket gör att den kontinuerligt kan gå igenom information istället för att vänta på att SSD: n ska skicka ytterligare en batch för bearbetning.
På grund av denna designarkitektur flyttas program i lagringsenheterna till RAM-minnet och nås sedan av CPU: n genom CPU-registren. Därför förbättrar ett snabbare primärt lagringssystem en dators prestanda, och det är precis vad Apple gör med sin Unified Memory Architecture.
Förstå hur traditionella minnessystem fungerar
Nu när vi vet varför RAM behövs måste vi förstå hur GPU: n och CPU: n använder det. Även om både GPU och CPU är designade för databehandling, är CPU: n designad för att utföra generella beräkningar. Tvärtom är GPU: n designad för att utföra samma uppgift på olika kärnor. På grund av denna skillnad i design är GPU: n mycket effektiv i bildbehandling och rendering.
Även om CPU och GPU har olika arkitekturer, är de beroende av primära lagringssystem för att få data. Det finns två typer av Random Access-minnen på ett traditionellt system med en dedikerad GPU. Detta är VRAM och system-RAM. Även känd som Video RAM, är VRAM ansvarig för att skicka data till GPU: n, och systemets RAM överför data till CPU: n.
Men för att bättre förstå system för minneshantering, låt oss titta på ett verkligt exempel på hur du spelar ett spel.
När du öppnar spelet kommer CPU in i bilden, och programdata för spelet flyttas till systemets RAM. Efter det bearbetar processorn data och skickar den till VRAM. GPU: n bearbetar sedan dessa data och skickar tillbaka dem till RAM-minnet så att CPU: n kan visa informationen på skärmen. I fall av ett integrerat GPU-system delar båda datorenheterna samma RAM men åtkomst till olika utrymmen i minnet.
Detta traditionella tillvägagångssätt innebär en hel del datarörelser som gör systemet ineffektivt. För att lösa detta problem använder Apple Unified Memory Architecture.
Hur fungerar Unified Memory Architecture på Apple Silicon?
Apple gör flera saker annorlunda när det kommer till minnessystem.
När det gäller generiska system är RAM-minnet anslutet till CPU: n med ett uttag på moderkortet. Denna anslutning hindrar mängden data som skickas till CPU: n.
Å andra sidan, Äppelkisel använder samma substrat för att montera RAM och SoC. Även om RAM inte är en del av SoC i en sådan arkitektur, använder Apple ett interposer-substrat (Fabric) för att ansluta RAM till SoC. Mellanläggaren är inget annat än ett lager av kisel mellan SOC och RAM.
Jämfört med traditionella uttag, som förlitar sig på kablar för att överföra data, tillåter interposern RAM-minnet att ansluta till chipsetet med hjälp av silikonvias. Det betyder att Apples kiseldrivna MacBooks har sitt RAM-minne direkt inbakat i förpackningen, vilket gör det snabbare att överföra data mellan minnet och processorn. RAM-minnet är också fysiskt närmare där data behövs (processorerna), vilket gör att data kan komma dit de behövs tidigare.
På grund av denna skillnad i att ansluta RAM till chipset, kan den komma åt höga databandbredder.
Utöver skillnaden som nämnts ovan ändrade Apple också hur CPU: n och GPU: n kommer åt minnessystemet.
Som förklarats tidigare har GPU: n och CPU: n olika minnespooler i traditionella inställningar. Apple, tvärtom, tillåter GPU, CPU och Neural Engine att komma åt samma minnespool. På grund av detta behöver data inte överföras från ett minnessystem till ett annat, vilket förbättrar systemets effektivitet ytterligare.
På grund av alla dessa skillnader i minnesarkitekturen erbjuder Unified Memory System hög databandbredd till SoC. Faktum är att M1 Ultra ger en bandbredd på 800 GB/s. Denna bandbredd är betydligt mer jämfört med högpresterande GPU: er som AMD Radeon RX 6800 och 6800XT, som erbjuder en bandbredd på 512 GB/s.
Denna höga bandbredd gör det möjligt för CPU, GPU och Neural Engine att komma åt stora datapooler på nanosekunder. Dessutom använder Apple LPDDR5 RAM-moduler klockade till 6400 MHz i M2-serien för att leverera data med häpnadsväckande hastigheter.
Hur mycket enhetligt minne behöver du?
Nu när vi har en grundläggande förståelse för Unified Memory Architecture kan vi titta på hur mycket av den du behöver.
Även om Unified Memory Architecture erbjuder flera fördelar, har den fortfarande några brister. För det första är RAM-minnet anslutet till SoC, så användare kan inte uppgradera RAM-minnet på sitt system. Dessutom har CPU, GPU och Neural Engine åtkomst till samma minnespool. På grund av detta ökar mängden minne som krävs av systemet drastiskt.
Därför, om du är någon som surfar på Internet och använder massor av ordbehandlare, skulle 8 GB minne räcka för dig. Men om du använder Adobe Creative Cloud-program ofta är det ett bättre alternativ att skaffa 16 GB-varianten eftersom du får en smidigare upplevelse av att redigera foton, videor och grafik på din maskin.
Du bör också överväga M1 Ultra med 128 GB RAM om du tränar många djupinlärningsmodeller eller arbetar på videotidslinjer med massor av lager och 4K-material.
Är Unified Memory Architecture allt för det goda?
Unified Memory Architecture på Apple silicon gör flera ändringar i minnessystemen på en dator. Från att ändra hur RAM-minnet är anslutet till beräkningsenheterna till att omdefiniera minnesarkitekturen, Apple förändrar hur minnessystem är designade för att förbättra effektiviteten i sina system.
Som sagt, den nya arkitekturen skapar ett race-tillstånd mellan CPU, GPU och Neural Engine, vilket ökar mängden RAM som systemet behöver.