2020-ban az Apple merész lépést tett; kidobták az Intelt, és áttértek a szabadalmaztatott szilíciumra a MacBookok táplálására. Bár az x86-os tervezési nyelvről az ARM architektúrára való áttérés több szemöldökét felvonta, az Apple bebizonyította, hogy mindenki téved, amikor az Apple szilícium alapú MacBookok észbontó teljesítményt nyújtottak watt.
Több szakértő szerint az ARM architektúrára való áttérés volt a fő oka a teljesítmény/watt növekedésnek. Az új Unified Memory Architecture azonban döntő szerepet játszott az új generációs MacBookok teljesítményének javításában is.
Tehát mi az Apple Unified Memory Architecture, és hogyan működik? Nos, derítsük ki.
Miért van szüksége a számítógépének memóriára?
Mielőtt belevágna az Apple Unified Memory Architecture rendszerébe, elengedhetetlen annak megértése, hogy miért van szükség az elsődleges tárolórendszerekre, például a Random Access Memory-ra (RAM).
Ugyanis egy hagyományos processzor 4 GHz-es órajelen fut a közben turbó. Ezen az órajelen a processzor negyed nanoszekundum alatt képes feladatokat végrehajtani. A tárolómeghajtók, például az SSD-k és a HDD-k azonban csak tíz milliszekundumként képesek adatot szolgáltatni a CPU-nak – ez 10 millió nanoszekundum. Ez azt jelenti, hogy a CPU befejezi a feldolgozott adatok feldolgozását és a következő információs köteget fogadja, tétlenül áll.
Ez egyértelműen azt mutatja, hogy a tárolómeghajtók nem tudnak lépést tartani a processzor sebességével. A számítógépek ezt a problémát elsődleges tárolórendszerek, például RAM használatával oldják meg. Bár ez a memóriarendszer nem képes tartósan tárolni az adatokat, sokkal gyorsabb az SSD-kkel összehasonlítva – akár 8,8 nanoszekundum alatt is képes adatot küldeni: végtelenül gyorsabban, mint a jelenleg leggyorsabb SSD-k.
Ez az alacsony hozzáférési idő lehetővé teszi a CPU számára, hogy gyorsabban fogadja az adatokat, lehetővé téve számára, hogy folyamatosan áttörje az információkat, ahelyett, hogy megvárná, amíg az SSD újabb köteget küld feldolgozásra.
Ennek a tervezési architektúrának köszönhetően a tárolómeghajtókban lévő programok a RAM-ba kerülnek, majd a CPU hozzáfér a CPU-regisztereken keresztül. Ezért a gyorsabb elsődleges tárolórendszer javítja a számítógép teljesítményét, és az Apple pontosan ezt teszi az egyesített memóriaarchitektúrájával.
A hagyományos memóriarendszerek működésének megértése
Most, hogy tudjuk, miért van szükség RAM-ra, meg kell értenünk, hogyan használja a GPU és a CPU azt. Bár mind a GPU, mind a CPU adatfeldolgozásra készült, a CPU általános célú számítások végrehajtására készült. Éppen ellenkezőleg, a GPU-t úgy tervezték, hogy ugyanazt a feladatot különböző magokon hajtsa végre. Ennek a tervezési különbségnek köszönhetően a GPU rendkívül hatékony a képfeldolgozásban és a renderelésben.
Bár a CPU és a GPU eltérő architektúrával rendelkezik, az adatok beszerzése az elsődleges tárolórendszerektől függ. A dedikált GPU-val rendelkező hagyományos rendszereken kétféle Random Access Memória létezik. Ez a VRAM és a rendszer RAM. Video RAM néven is ismert, a VRAM felelős az adatok GPU-nak való elküldéséért, a rendszer RAM pedig továbbítja az adatokat a CPU-nak.
De a memóriakezelési rendszerek jobb megértése érdekében nézzünk meg egy valós példát egy játékra.
A játék megnyitásakor a CPU megjelenik a képben, és a játék programadatai átkerülnek a rendszer RAM-jába. Ezt követően a CPU feldolgozza az adatokat, és elküldi a VRAM-nak. A GPU ezután feldolgozza ezeket az adatokat, és visszaküldi a RAM-nak, hogy a CPU megjelenítse az információkat a képernyőn. Integrált GPU-rendszer esetén mindkét számítástechnikai eszköz ugyanazon a RAM-on osztozik, de különböző memóriaterületekhez fér hozzá.
Ez a hagyományos megközelítés sok adatmozgással jár, ami a rendszert hatástalanná teszi. A probléma megoldására az Apple az egyesített memóriaarchitektúrát használja.
Hogyan működik az Apple Silicon egységes memóriaarchitektúrája?
Az Apple több dolgot másképp csinál, ha memóriarendszerekről van szó.
Általános rendszerek esetén a RAM az alaplapon lévő aljzat segítségével csatlakozik a CPU-hoz. Ez a kapcsolat szűk keresztmetszetet jelent a CPU-nak küldött adatmennyiségben.
Másrészről, Apple szilícium ugyanazt a hordozót használja a RAM és az SoC felszereléséhez. Bár a RAM nem része az SoC-nek egy ilyen architektúrában, az Apple interposer hordozót (Fabric) használ a RAM és az SoC összekapcsolásához. Az interposer nem más, mint egy szilíciumréteg az SOC és a RAM között.
A hagyományos aljzatokhoz képest, amelyek vezetékekre támaszkodnak az adatátvitelhez, az interposer lehetővé teszi, hogy a RAM szilícium-átmenetek segítségével csatlakozzon a chipkészlethez. Ez azt jelenti, hogy az Apple szilícium-meghajtású MacBookok RAM-ja közvetlenül a csomagba van beépítve, ami gyorsabbá teszi az adatátvitelt a memória és a processzor között. A RAM fizikailag is közelebb van ahhoz, ahol az adatokra szükség van (a processzorokhoz), így az adatok hamarabb eljutnak oda, ahol szükség van rájuk.
A RAM-nak a chipkészlethez való csatlakoztatásának ezen különbsége miatt nagy adatsávszélességekhez férhet hozzá.
A fent említett különbség mellett az Apple megváltoztatta azt is, hogy a CPU és a GPU hogyan fér hozzá a memóriarendszerhez.
Amint azt korábban kifejtettük, a GPU és a CPU különböző memóriakészlettel rendelkezik a hagyományos beállításokban. Ezzel szemben az Apple lehetővé teszi, hogy a GPU, a CPU és a Neural Engine ugyanahhoz a memóriakészlethez férhessen hozzá. Ennek köszönhetően az adatokat nem kell egyik memóriarendszerből a másikba átvinni, tovább javítva a rendszer hatékonyságát.
A memóriaarchitektúra ezen különbségei miatt az egyesített memóriarendszer nagy adatsávszélességet kínál az SoC számára. Valójában az M1 Ultra 800 GB/s sávszélességet biztosít. Ez a sávszélesség lényegesen nagyobb az olyan nagy teljesítményű GPU-khoz képest, mint a AMD Radeon RX 6800 és 6800XT, amelyek 512 GB/s sávszélességet kínálnak.
Ez a nagy sávszélesség lehetővé teszi a CPU, a GPU és a Neural Engine számára, hogy hatalmas adatkészletekhez férhessenek hozzá nanomásodpercek alatt. Emellett az Apple az M2 sorozatban 6400 MHz-es órajelű LPDDR5 RAM modulokat használ az adatszolgáltatás elképesztő sebességére.
Mennyi egységes memóriára van szüksége?
Most, hogy alapvető ismereteink vannak az egységes memóriaarchitektúráról, megnézhetjük, mennyire van szüksége belőle.
Bár az egységes memóriaarchitektúra számos előnnyel jár, még mindig vannak hibái. Először is, a RAM csatlakozik az SoC-hez, így a felhasználók nem tudják frissíteni a RAM-ot a rendszerükön. Ezenkívül a CPU, a GPU és a Neural Engine ugyanahhoz a memóriakészlethez fér hozzá. Ennek köszönhetően a rendszer által igényelt memória mennyisége drasztikusan megnő.
Ezért, ha Ön internetezik, és rengeteg szövegszerkesztőt használ, 8 GB memória elegendő lenne. De ha gyakran használ Adobe Creative Cloud programokat, a 16 GB-os változat beszerzése jobb megoldás, mivel gördülékenyebb lesz a fényképek, videók és grafikák szerkesztése a gépen.
Érdemes megfontolni a 128 GB RAM-mal rendelkező M1 Ultra modellt is, ha sok mély tanulási modellt oktat, vagy több réteget és 4K felvételt tartalmazó videó idővonalakon dolgozik.
Az egységes memóriaarchitektúra jót tesz?
Az Apple Silicon egységes memóriaarchitektúrája számos változtatást hajt végre a számítógép memóriarendszerein. A RAM-nak a számítási egységekhez való csatlakoztatásának megváltoztatásától a memóriaarchitektúra újradefiniálásáig az Apple megváltoztatja a memóriarendszerek tervezését, hogy javítsák rendszereik hatékonyságát.
Ennek ellenére az új architektúra versenyfeltételeket teremt a CPU, a GPU és a neurális motor között, növelve a rendszernek szükséges RAM mennyiségét.