I 2020 foretog Apple et modigt træk; de dumpede Intel og skiftede til deres proprietære silicium til at drive deres MacBooks. Selvom overgangen til ARM-arkitekturen fra x86-designsproget rejste flere øjenbryn, har Apple beviste, at alle tog fejl, da MacBook'erne drevet af Apple-silicium tilbød forbløffende ydeevne pr watt.
Ifølge flere eksperter var skiftet til ARM-arkitekturen en stor årsag til boostet i ydeevnen/watt. Den nye Unified Memory Architecture spillede dog også en afgørende rolle i at forbedre ydeevnen af den nye generation af MacBooks.
Så hvad er Apples Unified Memory Architecture, og hvordan fungerer det? Nå, lad os finde ud af det.
Hvorfor har din computer brug for hukommelse?
Før du går ind i Apples Unified Memory Architecture, er det vigtigt at forstå, hvorfor primære lagersystemer som Random Access Memory (RAM) er nødvendige i første omgang.
Du kan se, en traditionel processor kører med en clockhastighed på 4 GHz i løbet af en turbo boost. Ved denne clockhastighed kan en processor udføre opgaver på et kvart nanosekund. Lagerdrev, som SSD'er og HDD'er, kan dog kun levere data til CPU'en hvert tiende millisekund - det er 10 millioner nanosekunder. Det betyder, at i tiden mellem CPU'en afslutter behandlingen af de data, den arbejder på, og modtager den næste batch information, er den inaktiv.
Dette viser tydeligt, at lagerdrev ikke kan følge med processorens hastighed. Computere løser dette problem ved at bruge primære lagersystemer som RAM. Selvom dette hukommelsessystem ikke kan gemme data permanent, er det meget hurtigere sammenlignet med SSD'er - det kan sende data på så lidt som 8,8 nanosekunder: uendeligt hurtigere end de hurtigste SSD'er lige nu.
Denne lave adgangstid gør det muligt for CPU'en at modtage data hurtigere, hvilket giver den mulighed for kontinuerligt at knaske gennem information i stedet for at vente på, at SSD'en sender endnu en batch til behandling.
På grund af denne designarkitektur flyttes programmer i lagerdrevene til RAM'en og tilgås derefter af CPU'en gennem CPU-registrene. Derfor forbedrer et hurtigere primært lagringssystem en computers ydeevne, og det er netop, hvad Apple gør med sin Unified Memory Architecture.
Forstå hvordan traditionelle hukommelsessystemer fungerer
Nu hvor vi ved, hvorfor RAM er nødvendig, skal vi forstå, hvordan GPU'en og CPU'en bruger det. Selvom både GPU'en og CPU'en er designet til databehandling, er CPU'en designet til at udføre generelle beregninger. Tværtimod er GPU'en designet til at udføre den samme opgave på forskellige kerner. På grund af denne forskel i design er GPU'en yderst effektiv til billedbehandling og gengivelse.
Selvom CPU'en og GPU'en har forskellige arkitekturer, er de afhængige af primære lagersystemer for at få data. Der er to typer Random Access Memories på et traditionelt system med en dedikeret GPU. Dette er VRAM og system RAM. Også kendt som Video RAM, er VRAM'en ansvarlig for at sende data til GPU'en, og systemets RAM overfører data til CPU'en.
Men for bedre at forstå hukommelsesstyringssystemer, lad os se på et virkeligt eksempel på, hvordan du spiller et spil.
Når du åbner spillet, kommer CPU'en ind i billedet, og programdataene for spillet flyttes til systemets RAM. Derefter behandler CPU'en dataene og sender dem til VRAM'en. GPU'en behandler derefter disse data og sender dem tilbage til RAM'en, så CPU'en kan vise oplysningerne på skærmen. I tilfælde af et integreret GPU-system deler begge computerenheder den samme RAM, men har adgang til forskellige rum i hukommelsen.
Denne traditionelle tilgang involverer megen databevægelse, hvilket gør systemet ineffektivt. For at løse dette problem bruger Apple Unified Memory Architecture.
Hvordan fungerer Unified Memory Architecture på Apple Silicon?
Apple gør flere ting anderledes, når det kommer til hukommelsessystemer.
I tilfælde af generiske systemer er RAM forbundet til CPU'en ved hjælp af en fatning på bundkortet. Denne forbindelse begrænser mængden af data, der sendes til CPU'en.
På den anden side, Æble silicium bruger det samme substrat til montering af RAM og SoC. Selvom RAM'en ikke er en del af SoC'en i en sådan arkitektur, bruger Apple et interposer-substrat (Fabric) til at forbinde RAM'en til SoC'en. Interposeren er intet andet end et lag silicium mellem SOC'en og RAM'en.
Sammenlignet med traditionelle sokler, som er afhængige af ledninger til at overføre data, tillader interposeren RAM'en at forbinde til chipsættet ved hjælp af siliciumvias. Det betyder, at Apple silicium-drevne MacBooks har deres RAM bagt direkte ind i pakken, hvilket gør det hurtigere at overføre data mellem hukommelsen og processoren. RAM er også fysisk tættere på, hvor dataene er nødvendige (processorerne), hvilket gør det muligt for dataene at komme derhen, hvor de er nødvendige hurtigere.
På grund af denne forskel i at forbinde RAM til chipsættet, kan den få adgang til høje databåndbredder.
Ud over forskellen nævnt ovenfor har Apple også ændret, hvordan CPU'en og GPU'en får adgang til hukommelsessystemet.
Som forklaret tidligere har GPU'en og CPU'en forskellige hukommelsespuljer i traditionelle indstillinger. Apple tillader tværtimod GPU, CPU og Neural Engine at få adgang til den samme hukommelsespulje. På grund af dette behøver data ikke at blive overført fra et hukommelsessystem til et andet, hvilket forbedrer systemets effektivitet yderligere.
På grund af alle disse forskelle i hukommelsesarkitekturen tilbyder Unified Memory System høj databåndbredde til SoC. Faktisk giver M1 Ultra en båndbredde på 800 GB/s. Denne båndbredde er væsentligt større sammenlignet med højtydende GPU'er som f.eks AMD Radeon RX 6800 og 6800XT, som tilbyder en båndbredde på 512 GB/s.
Denne høje båndbredde gør det muligt for CPU, GPU og Neural Engine at få adgang til enorme datapuljer på nanosekunder. Derudover bruger Apple LPDDR5 RAM-moduler clocket til 6400 MHz i M2-serien til at levere data med forbløffende hastigheder.
Hvor meget samlet hukommelse har du brug for?
Nu hvor vi har en grundlæggende forståelse af Unified Memory Architecture, kan vi se på, hvor meget du har brug for.
Selvom Unified Memory Architecture tilbyder flere fordele, har den stadig nogle mangler. For det første er RAM forbundet til SoC, så brugere kan ikke opgradere RAM på deres system. Desuden har CPU'en, GPU'en og Neural Engine adgang til den samme hukommelsespulje. På grund af dette øges mængden af hukommelse, der kræves af systemet, drastisk.
Derfor, hvis du er en, der surfer på internettet og bruger et væld af tekstbehandlingsprogrammer, ville 8 GB hukommelse være nok for dig. Men hvis du bruger Adobe Creative Cloud-programmer ofte, er det en bedre mulighed at få 16 GB-varianten, da du vil få en mere jævn oplevelse med at redigere fotos, videoer og grafik på din maskine.
Du bør også overveje M1 Ultra med 128 GB RAM, hvis du træner mange deep learning-modeller eller arbejder på videotidslinjer med tonsvis af lag og 4K-optagelser.
Er den forenede hukommelsesarkitektur alt for det gode?
Unified Memory Architecture på Apple silicium foretager flere ændringer i hukommelsessystemerne på en computer. Fra at ændre, hvordan RAM er forbundet med beregningsenhederne til at omdefinere hukommelsesarkitekturen, ændrer Apple, hvordan hukommelsessystemer er designet til at forbedre effektiviteten af deres systemer.
Når det er sagt, skaber den nye arkitektur en racetilstand mellem CPU'en, GPU'en og Neural Engine, hvilket øger mængden af RAM, som systemet har brug for.