
La pamięć podręczna Nie zawsze znajdowała się ona w procesorze. W rzeczywistości starsze procesory jej nie posiadały. Później pojawiły się moduły podobne do dzisiejszych modułów RAM, umożliwiające opcjonalne dodanie pamięci podręcznej w celu poprawy wydajności procesora, podobnie jak dodawano koprocesory matematyczne, czyli FPU.
W obecnych mikroprocesorach pamięć podręczna została zintegrowany w samym chipie, obecnie niemal nieodłączna ich część, z kilkoma poziomami, które pozwalają na czerpanie z niej większych korzyści. W tym samouczku dowiesz się więcej o tym typie pamięci i jej znaczeniu.
Co to jest pamięć podręczna?
Zanim przejdę do wyjaśnienia, czym jest pamięć podręczna, chciałbym zrobić krótkie podsumowanie. jak działa procesor, dzięki czemu lepiej zrozumiesz jego wydajność. Mówiąc prościej, procesor to nic innego jak „kalkulator”, który przetwarza serię operacji na bitach danych.
To oprogramowanie, czyli program, wskaże, jakie obliczenia powinien wykonać procesor. Program składa się z serii danych i instrukcji. Wszystkie te dane i instrukcje są przechowywane w pamięci. pamięć drugorzędna Dane (z dysku twardego) zostaną przesłane do pamięci głównej (podstawowej). Stamtąd zostaną przechwycone przez procesor i zapisane w jego pamięci wewnętrznej. Instrukcja wskaże, co procesor powinien zrobić z danymi. Na przykład, może to być instrukcja dodawania. W ten sposób uruchamiane jest oprogramowanie…
Krótko mówiąc, wczesne komputery wykorzystywały pojedynczy poziom wolnej pamięci (jakiś rodzaj pamięci ROM lub pamięci magnetycznej), z której pobierały te instrukcje i dane. Jednak wraz z rozwojem i szybkością procesorów, pojawiły się poważne wąskie gardła wynikające z powolności tej pamięci. Dlatego między procesorem a pamięcią dodatkową wprowadzono szybką pamięć buforową: Baran (SDRAM).
Mimo to, procesor ewoluował szybciej niż sama pamięć RAM, tworząc kolejne wąskie gardło. Dlatego opracowano inną, znacznie szybszą pamięć, bliżej procesora i umieszczoną między pamięcią RAM a procesorem: skrytka (Pamięć SRAM).
Pamięć podrzędna jest tania, więc można uzyskać duże pojemności w dobrej cenie. W przypadku pamięci RAM jest szybsza, ale jednocześnie droższa niż pamięć podrzędna. Dlatego pojemność pamięci podstawowej nie jest tak duża. Kontynuując dalej, natrafimy na pamięć podręczną, która jest jeszcze droższa, a co za tym idzie, ma bardzo małą pojemność. Są też rejestry, również niezwykle drogie i ograniczone...
Dzięki tej pamięci podręcznej rdzenie procesora mogą być zasilane znacznie szybciej, dzięki czemu opóźnienia i przepustowość Pamięć RAM działa tak, że nie wpływa aż tak bardzo na wydajność procesora. To sposób na dostarczanie tych danych i instrukcji znacznie bardziej lokalnie i szybciej… Innymi słowy, aby były „pod ręką”.
W dzisiejszych czasach postęp w rozwoju pamięci wtórnej oznacza ogromny skok. Mam na myśli nowe Dyski SSD lub dyski twarde półprzewodnikowe. Są one jednak wolniejsze od pamięci RAM, więc te pozostałe poziomy są nadal konieczne.
Poziomy pamięci podręcznej w nowoczesnym procesorze

W nowoczesnych procesorach pamięć podręczna nie ma jednego poziomu, ale jest podzielona na kilka poziomów. Zazwyczaj jest ich od 2 do 4. poziomy lub poziomy (L):
- LLC (Pamięć podręczna ostatniego poziomu): Jest to ostatni poziom pamięci podręcznej, czyli ten „najbliższy” pamięci RAM, o najwyższym numerze w procesorze. Może to być L4, L3 lub L2, w zależności od poziomu. Na przykład w obecnych procesorach Intel i AMD jest to L3. Pamięć ta może osiągnąć kilka megabajtów i jest zunifikowana, co oznacza, że przechowuje zarówno dane, jak i instrukcje. Zasadniczo ten typ pamięci jest współdzielony przez wszystkie rdzenie, jeśli jest ich kilka. Na przykład, jeśli istnieją L3 i L2, L2 może być dedykowany tylko jednemu rdzeniowi lub współdzielony przez dwa rdzenie, a L3 będzie obsługiwał je wszystkie.
- Pamięć podręczna L1:Ta pamięć podręczna jest szybsza niż poprzednia i znajduje się jeszcze bliżej jednostki sterującej, dzięki czemu może szybciej pobierać informacje i przesyłać je do jednostek wykonawczych. W przeciwieństwie do wyższych poziomów, pamięć podręczna L1 ma mniejszą pojemność, co jest normalne, ponieważ im niższe poziomy, tym mniejsza pojemność. Najbardziej zauważalną różnicą jest jednak to, że w wielu procesorach pamięć podręczna nie jest zunifikowana, tak jak pozostałe poziomy. W tym przypadku jest ona podzielona na L1I i L1D, czyli tylko dla instrukcji i tylko dla danych.
Dlaczego to jest ważne?
No cóż, w tym momencie będziesz już miał pojęcie, dlaczego to poprawia wydajnośćPraktyczny przykład pomoże ci to dobrze zrozumieć. Wyobraź sobie, że Ty (procesor) musisz zdobyć narzędzia (instrukcje i dane) potrzebne do wykonania zadania (programu).
Posiadanie nie jest tym samym narzędzia w sklepie (pamięć podręczna), niż w garażu (RAM) lub na wyciągnięcie ręki (pamięć podręczna). Jeśli musisz iść do sklepu lub garażu, zajmie to znacznie więcej czasu niż gdybyś mógł sięgnąć po nie tuż obok. Nie zawsze tak jest. Kiedy po raz pierwszy potrzebujesz instrukcji lub danych, musisz udać się do pokoju lub garażu, aby je zdobyć. Ale kiedy już je zdobędziesz i będziesz mieć je tuż obok siebie, następnym razem będziesz znacznie wydajniejszy.
Procesor, poprzez system wyszukiwania i wykrywania błędów Zawsze będzie najpierw szukać instrukcji i danych w warstwie L1. W przypadku awarii, będzie szukać w warstwie L2, a jeśli jej tam również nie będzie, przejdzie do warstwy L3 (o ile taka istnieje). A jeśli również wystąpi awaria, nie będzie miał innego wyjścia, jak szukać w pamięci RAM, co zajmie więcej cykli zegara. Ale jeśli się powiedzie, dostęp będzie znacznie szybszy. Należy pamiętać, że dostęp do warstwy L1 zajmuje mniej cykli niż do warstwy L2, a z kolei do warstwy L3 potrzeba mniej cykli niż do warstwy LXNUMX i tak dalej.
To jest cel pamięci podręcznej – zmniejszenie opóźnień w dostępie do pamięci. Nalegam, podsumowując wiele Jak to działa. Zasadniczo w ten sposób Twoje aplikacje i gry działają znacznie szybciej.

