Co to jest pamięć podręczna L0?

Procesory to niesamowicie złożone bestie. Istnieje wiele połączonych ze sobą części, które muszą działać w idealnej harmonii, aby osiągnąć poziom wydajności, który widzimy. Jedną z kluczowych cech procesora jest pamięć podręczna. To nie jest efektowna funkcja. Nie reklamuje się tak dobrze, jak liczba rdzeni lub szczytowa częstotliwość doładowania. Ma to jednak kluczowe znaczenie dla wydajności.

Dlaczego pamięć podręczna?

Nowoczesne procesory są niesamowicie szybkie. W ciągu sekundy wykonują ponad pięć miliardów operacji. Utrzymywanie zasilania procesora danymi, gdy działa tak szybko, jest trudne. Pamięć RAM ma wystarczającą pojemność, aby dostarczać dane do procesora. Może przesyłać dane nawet co sekundę, dzięki bardzo dużej przepustowości. To jednak nie problem. Problemem jest latencja.

Pamięć RAM może reagować bardzo szybko. Problem polega na tym, że „bardzo szybko” to długi czas, kiedy robisz pięć miliardów rzeczy na sekundę. Nawet najszybsza pamięć RAM ma opóźnienie powyżej 60 nanosekund. Ponownie, 60 nanosekund brzmi jak żaden czas. Problem polega na tym, że gdyby procesor działał z częstotliwością 1 GHz, ukończenie cyklu zajęłoby 1 ns. W przypadku wysokiej klasy procesorów osiągających częstotliwość 5,7 GHz oznacza to jeden cykl na 175 pikosekund. Jak wygląda teraz te 60 nanosekund opóźnienia? To 342 cykle opóźnienia.

Tego rodzaju opóźnienie byłoby zabójcze dla wydajności procesora. Aby to obejść, używana jest pamięć podręczna. Pamięć podręczna jest umieszczana na samej matrycy procesora. Jest również znacznie mniejszy niż pamięć RAM i wykorzystuje inną strukturę, SRAM niż DRAM. Dzięki temu reaguje znacznie szybciej niż główna systemowa pamięć RAM. Pamięć podręczna jest zwykle wielopoziomowa, przy czym L1, L2 i L3 są używane do oznaczenia poziomów, które oddalają się od rdzeni procesora. Niższe poziomy są szybsze, ale mniejsze. L1 może mieć opóźnienie czterech lub pięciu cykli zegara, znacznie lepsze niż 342.

Ale niektóre procesory wspominają o L0?

Terminologia dla L1, L2 i L3 jest dość standardowa. Niejasne zrozumienie ich znaczenia i działania jest stosunkowo powszechne, nawet wśród dostawców procesorów. Dzieje się tak, ponieważ rządzą nimi fizyka materiałowa i elektryczna; niewiele może się zmienić. Możesz mieć szybką pamięć podręczną lub dużą pamięć podręczną, nie obie. Musi być większy, jeśli współdzielisz pamięć podręczną między wieloma rdzeniami. W tym celu L1 i L2 wydają się być specyficzne dla rdzenia. Większa pamięć podręczna L3 jest zwykle współdzielona przez niektóre lub wszystkie rdzenie procesora lub chipletu.

Jak zapewne można się domyślić, L0 jest związane z buforowaniem, ale zostało wepchnięte do schematu nazewnictwa po fakcie. Nie pomaga to jednak zrozumieć, co to znaczy. Pewnych rzeczy można się chyba jednak domyślić. Będzie ograniczony do jednego rdzenia, będzie mały i będzie szybki. Inna nazwa, którą nosi, może trochę pomóc; to pamięć podręczna mikrooperacji.

Zamiast buforować dane z pamięci lub pełne instrukcje, L0 buforuje mikrooperacje. Jak niedawno opisaliśmy , mikrooperacja jest cechą nowoczesnych procesorów. Instrukcje w x86 i innych ISA są duże, złożone i trudne do efektywnego dopasowania do potoku. Możesz je potokować znacznie wydajniej, jeśli podzielisz je na składowe mikrooperacje. W niektórych przypadkach można nawet zgrupować wiele mikrooperacji, nawet z różnych instrukcji, w jedną mikrooperację, osiągając zarówno poprawę wydajności, jak i redukcję mocy.

Architektura procesora z pamięcią podręczną mikrooperacji

Aby wykonać instrukcję, nowoczesny procesor dekoduje ją. Obejmuje to podzielenie instrukcji na składowe mikrooperacje i określenie lokalizacji pamięci, do których należy się odwoływać. Wiele programów regularnie korzysta z podobnych funkcji i często może ponownie wykorzystywać ten sam kod w pętli lub z wywoływanej funkcji. Oznacza to, że dokładne instrukcje mogą być wywoływane wielokrotnie. Oznacza to, że te same mikrooperacje są wywoływane raz za razem. A jeśli te same mikrooperacje są potrzebne wielokrotnie, można je zapisać w pamięci podręcznej. Mikrooperacje w pamięci podręcznej mogą zmniejszyć obciążenie dekoderów instrukcji, zmniejszając pobór mocy lub pomagając w szybszym zapełnianiu potoku.

Pamięć podręczna musi być mała, ale przy starannym zarządzaniu można uzyskać do niej dostęp z pojedynczym opóźnieniem cyklu lub nawet bez opóźnienia. Może to wystarczyć, aby zapobiec konieczności przyjmowania 4-cyklowego opóźnienia do pamięci podręcznej L1 i nie wiąże się z karą za brak pamięci podręcznej.

Wniosek

Pamięć podręczna L0 to inna nazwa pamięci podręcznej mikrooperacji. Może być częścią nowoczesnych procesorów wykorzystujących mikrooperacje. Zwykle zawiera kilka tysięcy wpisów i ma pojemność podaną w liczbie wpisów, a nie w bajtach. Dostęp do L0 można uzyskać szybciej niż do L1, zazwyczaj z opóźnieniem 1 lub 0 cykli. Buforowanie mikrooperacji zmniejsza obciążenie dekoderów instrukcji, zwłaszcza w kodzie, który dobrze wykorzystuje pętle lub funkcje.



Leave a Comment

Jak sklonować dysk twardy

Jak sklonować dysk twardy

We współczesnej epoce cyfrowej, gdzie dane są cennym zasobem, klonowanie dysku twardego w systemie Windows może być dla wielu kluczowych procesów. Ten obszerny przewodnik

Jak naprawić błąd ładowania sterownika WUDFRd w systemie Windows 10?

Jak naprawić błąd ładowania sterownika WUDFRd w systemie Windows 10?

Czy podczas uruchamiania komputera pojawia się komunikat o błędzie informujący, że nie udało się załadować sterownika WUDFRd na Twój komputer?

Jak naprawić błąd NVIDIA GeForce Experience o kodzie 0x0003

Jak naprawić błąd NVIDIA GeForce Experience o kodzie 0x0003

Czy na pulpicie pojawia się błąd NVIDIA GeForce o kodzie 0x0003? Jeśli tak, przeczytaj blog, aby dowiedzieć się, jak szybko i łatwo naprawić ten błąd.

How to Use Auto Clicker for Chromebook

How to Use Auto Clicker for Chromebook

Today, were going to delve into a tool that can automate repetitive clicking tasks on your Chromebook: the Auto Clicker. This tool can save you time and

Jak usunąć procesor graficzny z komputera z systemem Windows w 2023 r

Jak usunąć procesor graficzny z komputera z systemem Windows w 2023 r

Czy musisz usunąć GPU z komputera? Dołącz do mnie, gdy wyjaśnię, jak usunąć procesor graficzny z komputera w tym przewodniku krok po kroku.

Jak zainstalować dysk SSD NVMe na komputerze stacjonarnym i laptopie

Jak zainstalować dysk SSD NVMe na komputerze stacjonarnym i laptopie

Kupiłeś nowy dysk SSD NVMe M.2, ale nie wiesz, jak go zainstalować? Czytaj dalej, aby dowiedzieć się, jak zainstalować dysk SSD NVMe na laptopie lub komputerze stacjonarnym.

Co to jest bomba logiczna?

Co to jest bomba logiczna?

Bomba logiczna to incydent związany z bezpieczeństwem, w którym osoba atakująca przeprowadza opóźnioną akcję. Czytaj dalej, aby dowiedzieć się więcej.

Co to jest SoC?

Co to jest SoC?

Jeśli kiedykolwiek zajrzałeś do wnętrza wieży PC, możesz zobaczyć, że jest tam wiele różnych komponentów. Twój przeciętny laptop zawiera większość tych samych komponentów

Co to jest szyfrowanie asymetryczne?

Co to jest szyfrowanie asymetryczne?

Algorytmy szyfrowania asymetrycznego wykorzystują dwa różne klucze. Jeden klucz służy do szyfrowania, a drugi do deszyfrowania.

Steam Deck: Jak sformatować kartę SD

Steam Deck: Jak sformatować kartę SD

Steam Deck jest dostępny w trzech opcjach przechowywania: 64 GB eMMC, 256 GB NVMe SSD i 512 GB NVMe SSD. W zależności od biblioteki gier i rozmiaru gier