Kaj je notranji RAM?

Notranji pomnilnik z naključnim dostopom (RAM) je računalniški pomnilnik, ki je vgrajen neposredno v čip mikrokrmilnika, kot je računalniška centralna procesna enota (CPU). Programerji ga lahko uporabljajo za povečanje hitrosti programskih funkcij z neposrednim naslavljanjem notranjega RAM-a, kar zagotavlja, da so kritični procesi v čakalni vrsti in obdelani hitreje in z višjo prioriteto s strani CPU. To lahko močno pospeši procesorsko intenzivne aplikacije, saj se pogosto uporabljena navodila lahko prenesejo v CPE veliko hitreje kot jih črpate iz zunanjega RAM-a.

CPE imajo tri ravni predpomnilnika ali notranjega RAM-a. Predpomnilnik procesorja je sestavljen iz statičnega RAM-a (SRAM), ki ni enak običajnemu pomnilniku, nameščenemu na matični plošči, imenovanem dinamični RAM (DRAM). Ko CPE išče podatke, najprej preveri predpomnilnik ravni 1 (L1), nato nivo 2 (L2), nato raven 3 (L3). Šele po tem bo potegnil podatke iz DRAM-a.

Znotraj procesorja je predpomnilnik L1 dodeljen vsakemu jedru na samem procesorju. To je najhitrejši notranji RAM, ker deluje kot medpomnilnik za navodila, predana vsakemu procesorskemu jedru, kot narekuje program, ki zahteva obdelavo. V večjedrnih procesorjih lahko to bistveno pospeši obdelavo, če se več jeder obravnava posamično prek zahtev za predpomnilnik L1.

Predpomnilnik L2 je v paketu CPU in se tako še vedno šteje za notranji RAM. Ni vgrajen neposredno na dejanski čip CPE, kot je predpomnilnik L1. Vsako jedro ima še vedno svoj predpomnilnik L2, ki mu je namenjen in tako lahko deluje vzporedno, pri čemer izkorišča hitrosti L2. Vendar je predpomnilnik L2 počasnejši od predpomnilnika L1.

Predpomnilnik L3 ni v paketu CPE, zato se ne šteje za notranji RAM, ampak deluje poleg njega. To je najhitrejši zunanji RAM, ki je na voljo v računalniku. Vsa jedra CPU si delijo predpomnilnik L3.
Celoten postopek lahko gledamo kot čakalno vrsto in razčlenitev podatkov iz zunanjega DRAM-a, v notranji RAM in končno do dejanskih navodil za obdelavo. Določene funkcije znotraj katerega koli programa so vzpostavljene z višjo prioriteto kot druge, te pa so premaknjene na sprednji del čakalne vrste kot del optimizacije posameznega programa. Podatki z najvišjo prioriteto so naslovljeni neposredno v predpomnilnik L1 za najhitrejšo obdelavo, najnižje prioritete pa so v čakalnih vrstah skozi celoten proces. Glavna razlika je v tem, kjer se predpomnilnik obdeluje po metodi »izvleke iz čakalne vrste«, notranji RAM je programsko naslovljiv, zato je podatke mogoče posebej dodeliti posameznim notranjim nivojem RAM-a.