otwarty
Zamknąć

Która pamięć podręczna jest podzielona na dwie części. Co oznacza pamięć podręczna procesora, jaka jest różnica między L1, L2, L3. Pakowanie i rozpakowywanie

Chipy w większości nowoczesnych komputerów stacjonarnych mają cztery rdzenie, ale producenci chipów ogłosili już plany przejścia na sześć rdzeni, a procesory 16-rdzeniowe nadal nie są rzadkością w dzisiejszych serwerach wysokiej klasy.

Im więcej rdzeni, tym większy problem z dystrybucją pamięci pomiędzy wszystkimi rdzeniami podczas jednoczesnej pracy. Wraz ze wzrostem liczby rdzeni coraz bardziej korzystne jest minimalizowanie czasu traconego na zarządzanie rdzeniami podczas przetwarzania danych - ponieważ prędkość wymiany danych pozostaje w tyle za szybkością procesora i przetwarzania danych w pamięci. Możesz fizycznie uzyskać dostęp do szybkiej pamięci podręcznej innej osoby lub możesz uzyskać dostęp do własnej, powolnej pamięci podręcznej, ale oszczędzasz czas przesyłania danych. Zadanie komplikuje fakt, że ilość pamięci żądanej przez programy nie odpowiada jednoznacznie ilości pamięci podręcznej każdego typu.

Fizycznie tylko bardzo ograniczona ilość pamięci może być umieszczona jak najbliżej procesora - pamięć podręczna L1 procesora, której objętość jest niezwykle niewielka. Daniel Sanchez, Po-An Tsai i Nathan Beckmann, badacze z laboratorium informatyki i sztucznej inteligencji Massachusetts Institute of Technology, nauczyli komputer konfigurowania różnych typów pamięci w celu uzyskania elastycznej hierarchii programów w czasie rzeczywistym. Nowy system o nazwie Jenga analizuje potrzeby wolumetryczne i częstotliwość dostępu programu do pamięci oraz redystrybuuje moc każdego z 3 typów pamięci podręcznej procesora w kombinacjach zapewniających zwiększoną wydajność i oszczędność energii.


Na początek badacze przetestowali wzrost wydajności podczas łączenia pamięci statycznej i dynamicznej podczas pracy nad programami dla procesora jednordzeniowego i uzyskali pierwotną hierarchię – kiedy lepiej zastosować którą kombinację. Z 2 typów pamięci lub z jednego. Oceniono dwa parametry: opóźnienie sygnału (latencję) oraz zużycie energii podczas działania każdego programu. Około 40% programów zaczęło działać gorzej przy kombinacji typów pamięci, reszta - lepiej. Po zarejestrowaniu, które programy „lubią” mieszaną wydajność, a które rozmiar pamięci, badacze zbudowali swój system Jenga.

Wirtualnie przetestowali 4 typy programów na wirtualnym komputerze z 36 rdzeniami. Testowane programy:

  • omnet - Objective Modular Network Testbed, biblioteka symulacyjna C i platforma narzędzi do symulacji sieci (niebieski na zdjęciu)
  • mcf – Meta Content Framework (kolor czerwony)
  • astar - oprogramowanie do wyświetlania rzeczywistości wirtualnej (zielone)
  • bzip2 - archiwizator (kolor fioletowy)


Na zdjęciu widać gdzie i w jaki sposób zostały przetworzone dane każdego programu. Litery wskazują, gdzie działa każda aplikacja (po jednej w ćwiartce), kolory wskazują, gdzie znajdują się jej dane, a cieniowanie wskazuje drugi poziom wirtualnej hierarchii, jeśli jest obecny.

Poziomy pamięci podręcznej

Pamięć podręczna procesora jest podzielona na kilka poziomów. W przypadku procesorów uniwersalnych - do 3. Najszybszą pamięcią jest pamięć podręczna pierwszego poziomu - pamięć podręczna L1, ponieważ znajduje się ona na tym samym chipie co procesor. Składa się z pamięci podręcznej instrukcji i pamięci podręcznej danych. Niektóre procesory bez pamięci podręcznej L1 nie mogą działać. Pamięć podręczna L1 działa z częstotliwością procesora i jest dostępna w każdym cyklu zegara. Często możliwe jest jednoczesne wykonywanie wielu operacji odczytu/zapisu. Objętość jest zwykle niewielka - nie większa niż 128 KB.

Pamięć podręczna drugiego poziomu, L2, współdziała z pamięcią podręczną L1. Jest drugim najszybszym. Zwykle znajduje się on na chipie, jak L1, lub w pobliżu rdzenia, na przykład we wkładzie procesora. W starszych procesorach zestaw chipów na płycie głównej. Wielkość pamięci podręcznej L2 od 128 KB do 12 MB. W nowoczesnych procesorach wielordzeniowych pamięć podręczna drugiego poziomu, umieszczona na tym samym chipie, jest osobną pamięcią - przy całkowitym rozmiarze pamięci podręcznej wynoszącej 8 MB każdy rdzeń zajmuje 2 MB. Zazwyczaj opóźnienie pamięci podręcznej L2 znajdującej się na chipie rdzenia wynosi od 8 do 20 cykli zegara rdzenia. W zadaniach obejmujących wielokrotny dostęp do ograniczonego obszaru pamięci, na przykład systemu DBMS, jego pełne wykorzystanie zwiększa produktywność dziesięciokrotnie.

Pamięć podręczna L3 jest zwykle jeszcze większa, chociaż nieco wolniejsza niż pamięć podręczna L2 (ze względu na fakt, że magistrala między L2 i L3 jest węższa niż magistrala między L1 i L2). L3 jest zwykle umieszczony oddzielnie od rdzenia procesora, ale może być duży - ponad 32 MB. Pamięć podręczna L3 jest wolniejsza niż poprzednie pamięci podręczne, ale wciąż szybsza niż pamięć RAM. W systemach wieloprocesorowych jest powszechnie stosowany. Zastosowanie pamięci podręcznej trzeciego poziomu jest uzasadnione w bardzo wąskim zakresie zadań i może nie tylko nie zapewnić wzrostu wydajności, ale wręcz przeciwnie, prowadzić do ogólnego spadku wydajności systemu.

Wyłączenie pamięci podręcznej drugiego i trzeciego poziomu jest najbardziej przydatne w przypadku problemów matematycznych, gdy ilość danych jest mniejsza niż rozmiar pamięci podręcznej. W takim przypadku możesz załadować wszystkie dane na raz do pamięci podręcznej L1, a następnie je przetworzyć.


Jenga okresowo rekonfiguruje wirtualne hierarchie na poziomie systemu operacyjnego, aby zminimalizować wymianę danych, biorąc pod uwagę ograniczenia zasobów i zachowanie aplikacji. Każda rekonfiguracja składa się z czterech kroków.

Jenga dystrybuuje dane nie tylko w zależności od tego, które programy są wysyłane - tych, które kochają dużą pamięć o pojedynczej prędkości lub tych, które kochają szybkość mieszanych pamięci podręcznych, ale także w zależności od fizycznej bliskości komórek pamięci do przetwarzanych danych. Niezależnie od tego, jakiego typu pamięci podręcznej wymaga program domyślnie lub według hierarchii. Najważniejsze jest, aby zminimalizować opóźnienie sygnału i zużycie energii. W zależności od tego, ile typów pamięci „lubi” program, Jenga modeluje opóźnienie każdej wirtualnej hierarchii na jednym lub dwóch poziomach. Hierarchie dwupoziomowe tworzą powierzchnię, hierarchie jednopoziomowe tworzą krzywą. Następnie Jenga rzutuje minimalne opóźnienie na wymiary VL1, co daje dwie krzywe. Wreszcie Jenga używa tych krzywych, aby wybrać najlepszą hierarchię (tj. Rozmiar VL1).

Korzystanie z Jengi przyniosło zauważalny efekt. Wirtualny 36-rdzeniowy układ zaczął pracować o 30 procent szybciej i zużywał 85 procent mniej energii. Oczywiście na razie Jenga to tylko symulacja działającego komputera i minie trochę czasu, zanim zobaczysz prawdziwe przykłady tej pamięci podręcznej, a nawet zanim producenci chipów zaadoptują ją, jeśli spodoba im się ta technologia.

Konfiguracja konwencjonalnej maszyny nuklearnej 36

  • Procesory. 36 rdzeni, x86-64 ISA, 2,4 GHz, podobne do Silvermont OOO: szerokość 8B
    ifetch; 2-poziomowy bpred z 512 × 10-bitowymi BHSR + 1024 × 2-bitowy PHT, 2-kierunkowe dekodowanie/wydawanie/zmiana nazwy/zatwierdzanie, 32-wejściowe IQ i ROB, 10-wejściowe LQ, 16-wejściowe SQ; 371 pJ/instrukcję, moc statyczna 163 mW/rdzeń
  • Pamięci podręczne L1. 32 KB, 8-kierunkowe zbiory asocjacyjne, dzielone pamięci podręczne danych i instrukcji,
    Opóźnienie 3 cykli; 15/33 pJ za trafienie/chybienie
  • Usługa prefetcherów. 16-wejściowe moduły pobierania strumieniowego wzorowane i sprawdzane na podstawie
    Nehalem
  • Pamięci podręczne L2. 128 KB prywatnego dysku na rdzeń, 8-kierunkowy zestaw asocjacyjny, włącznie, opóźnienie 6 cykli; 46/93 pJ na trafienie/chybienie
  • Tryb spójny. 16-kierunkowe banki katalogów z 6 cyklami opóźnień dla Jengi; katalogi L3 w pamięci podręcznej dla innych
  • Globalny numer NoC. siatka 6×6, 128-bitowe przeloty i łącza, routing X-Y, 2-cyklowe routery potokowe, łącza 1-cyklowe; 63/71 pJ na router/łącze, moc statyczna routera/łącza 12/4 mW
  • Pamięć statyczna blokuje SRAM. 18 MB, jeden bank 512 KB na kafelek, 4-kierunkowa pamięć podręczna na 52 kandydatów, opóźnienie banku 9 cykli, partycjonowanie Vantage; 240/500 pJ na trafienie/chybienie, moc statyczna 28 mW/bank
  • Wielowarstwowa pamięć DRAM. 1152 MB, jeden skarbiec 128 MB na 4 płytki, stop z MAP-I DDR3-3200 (1600 MHz), magistrala 128-bitowa, 16 szeregów, 8 banków/rangę, bufor wierszy 2 KB; 4,4/6,2 nJ na trafienie/chybienie, moc statyczna 88 mW/skok
  • Pamięć główna. 4 kanały DDR3-1600, magistrala 64-bitowa, 2 szeregi na kanał, 8 banków na rząd, bufor wierszy 8 KB; 20 nJ/dostęp, moc statyczna 4 W
  • Taktowanie pamięci DRAM. tCAS=8, tRCD=8, tRTP=4, tRAS=24, tRP=8, tRRD=4, tWTR=4, tWR=8, tFAW=18 (wszystkie taktowania w tCK; ułożona w stos pamięć DRAM ma połowę tCK jako pamięć główna )

Pamięć podręczna lub jak to się nazywa pamięć buforowa dysku twardego. Jeśli nie wiesz co to jest, chętnie odpowiemy na to pytanie i opowiemy o wszystkich dostępnych funkcjach. Jest to specjalny rodzaj pamięci RAM, która pełni funkcję bufora do przechowywania wcześniej odczytanych, ale jeszcze nie przesłanych danych w celu dalszego przetwarzania, a także do przechowywania informacji, do których system najczęściej uzyskuje dostęp.

Potrzeba przechowywania tranzytowego powstała ze względu na znaczną różnicę pomiędzy przepustowością systemu PC a szybkością odczytu danych z dysku. Pamięć podręczną można znaleźć także w innych urządzeniach, a mianowicie w kartach graficznych, procesorach, kartach sieciowych i innych.

Jaka jest głośność i na co wpływa?

Na szczególną uwagę zasługuje objętość bufora. Często dyski twarde są wyposażone w pamięć podręczną o pojemności 8, 16, 32 i 64 MB. Podczas kopiowania dużych plików między 8 a 16 MB będzie znacząca różnica w wydajności, ale między 16 a 32 jest mniej zauważalna. Jeśli wybierzesz między 32 a 64, to prawie nie będzie ich wcale. Należy zrozumieć, że bufor często doświadcza dużych obciążeń, w tym przypadku im większy, tym lepiej.

Nowoczesne dyski twarde zajmują 32 lub 64 MB mniej; obecnie prawie nigdzie nie można znaleźć. Dla zwykłego użytkownika wystarczą zarówno pierwsza, jak i druga wartość. Ponadto na wydajność wpływa również rozmiar pamięci podręcznej wbudowanej w system. To zwiększa wydajność dysku twardego, szczególnie przy wystarczającej ilości pamięci RAM.

Oznacza to, że teoretycznie im większy wolumin, tym lepsza wydajność i więcej informacji może znajdować się w buforze i nie ładować dysku twardego, ale w praktyce wszystko jest trochę inne i przeciętny użytkownik, z wyjątkiem rzadkich przypadków, nie zauważy dużej różnicy. Oczywiście zaleca się wybieranie i kupowanie urządzeń o największym rozmiarze, co znacznie poprawi wydajność Twojego komputera. Należy to jednak robić tylko wtedy, gdy pozwalają na to możliwości finansowe.

Zamiar

Jest przeznaczony do odczytu i zapisu danych, ale na dyskach SCSI w rzadkich przypadkach wymagane jest pozwolenie na buforowanie zapisu, ponieważ domyślnie buforowanie zapisu jest wyłączone. Jak już powiedzieliśmy, wielkość nie jest czynnikiem decydującym o poprawie efektywności operacyjnej. Aby zwiększyć wydajność dysku twardego, ważniejsze jest zorganizowanie wymiany informacji z buforem. Ponadto w pełni wpływa na to działanie elektroniki sterującej, zapobieganie występowaniu itp.

Pamięć buforowa przechowuje najczęściej używane dane, natomiast objętość określa pojemność tych przechowywanych informacji. Ze względu na duży rozmiar wydajność dysku twardego znacznie wzrasta, ponieważ dane są ładowane bezpośrednio z pamięci podręcznej i nie wymagają fizycznego odczytu.

Odczyt fizyczny to bezpośredni dostęp systemu do dysku twardego i jego sektorów. Proces ten jest mierzony w milisekundach i zajmuje dość dużo czasu. Jednocześnie dysk twardy przesyła dane ponad 100 razy szybciej, niż jest to wymagane w wyniku fizycznego dostępu do dysku twardego. Oznacza to, że umożliwia działanie urządzenia nawet wtedy, gdy magistrala hosta jest zajęta.

Główne zalety

Pamięć buforowa ma szereg zalet, z których główną jest szybkie przetwarzanie danych, które zajmuje minimalną ilość czasu, natomiast fizyczny dostęp do sektorów dysku wymaga określonej ilości czasu, zanim głowica dysku znajdzie żądaną sekcję danych i rozpocznie żeby to przeczytać. Co więcej, dyski twarde o największej pojemności mogą znacznie odciążyć procesor komputera. W związku z tym procesor jest używany minimalnie.

Można go również nazwać pełnoprawnym akceleratorem, ponieważ funkcja buforowania sprawia, że ​​​​dysk twardy działa znacznie wydajniej i szybciej. Ale dziś, wraz z szybkim rozwojem technologii, traci swoje dawne znaczenie. Wynika to z faktu, że większość nowoczesnych modeli ma 32 i 64 MB, co wystarcza do normalnego funkcjonowania dysku. Jak wspomniano powyżej, różnicę można przepłacić tylko wtedy, gdy różnica w kosztach odpowiada różnicy w wydajności.

Na koniec chciałbym powiedzieć, że pamięć buforowa, niezależnie od tego, jaka ona jest, poprawia wydajność konkretnego programu lub urządzenia tylko wtedy, gdy wielokrotnie uzyskuje się dostęp do tych samych danych, których rozmiar nie jest większy niż rozmiar pamięci podręcznej. Jeśli do pracy na komputerze wykorzystywane są programy aktywnie korzystające z małych plików, potrzebny będzie dysk twardy o największej pojemności.

Jak sprawdzić aktualny rozmiar pamięci podręcznej

Wszystko, co musisz zrobić, to pobrać i zainstalować darmowy program HDTune. Po uruchomieniu przejdź do sekcji „Informacje”, a na dole okna zobaczysz wszystkie niezbędne parametry.


Jeśli kupujesz nowe urządzenie, wszystkie niezbędne cechy znajdziesz na pudełku lub w dołączonej instrukcji. Inną opcją jest poszukanie w Internecie.

Pamięć podręczna to pamięć wbudowana w procesor, do której zapisywane są najczęściej używane dane (polecenia) pamięci RAM, co znacznie przyspiesza pracę.

Rozmiar pamięci podręcznej L1 (od 8 do 128 KB)
Rozmiar pamięci podręcznej poziomu 1.
Pamięć podręczna poziomu 1 to blok szybkiej pamięci umieszczony bezpośrednio na rdzeniu procesora.
Dane wyodrębnione z pamięci RAM są do niej kopiowane.

Przechowywanie podstawowych instrukcji poprawia wydajność procesora ze względu na większą prędkość przetwarzania danych (przetwarzanie z pamięci podręcznej jest szybsze niż z pamięci RAM).

Pojemność pamięci podręcznej pierwszego poziomu jest niewielka i wynosi kilobajty.
Zazwyczaj „starsze” modele procesorów mają większą pamięć podręczną L1.
W przypadku modeli wielordzeniowych wskazana jest ilość pamięci podręcznej L1 dla jednego rdzenia.

Rozmiar pamięci podręcznej L2 (od 128 do 12288 KB)
Rozmiar pamięci podręcznej poziomu 2.
Pamięć podręczna L2 to blok szybkiej pamięci, który spełnia te same funkcje, co pamięć podręczna L1 (patrz „Pojemność pamięci podręcznej L1”), ale ma mniejszą prędkość i większą pojemność.

Jeśli wybierzesz procesor do zadań wymagających dużej ilości zasobów, preferowany będzie model z dużą pamięcią podręczną L2.
W przypadku procesorów wielordzeniowych wskazywana jest całkowita ilość pamięci podręcznej drugiego poziomu.

Rozmiar pamięci podręcznej L3 (od 0 do 16384 KB)
Rozmiar pamięci podręcznej poziomu 3.
Zintegrowana pamięć podręczna L3 w połączeniu z szybką magistralą systemową tworzy szybki kanał wymiany danych z pamięcią systemową.

Z reguły tylko procesory do rozwiązań serwerowych lub specjalne edycje procesorów „do komputerów stacjonarnych” są wyposażone w pamięć podręczną trzeciego poziomu.

Na przykład linie procesorów, takie jak Intel Pentium 4 Extreme Edition, Xeon DP, Itanium 2, Xeon MP i inne, mają pamięć podręczną trzeciego poziomu.

Twin BiCS FLASH - nowa technologia pamięci flash 3D

11 grudnia 2019 roku podczas Międzynarodowego Spotkania Urządzeń Elektronicznych IEEE (IEDM) firma TOKYO-Kioxia Corporation ogłosiła technologię pamięci flash 3D - Twin BiCS FLASH.

Sterownik AMD Radeon Software Adrenalin Edition 2020 19.12.2 WHQL (dodano)

10 grudnia AMD wprowadziło mega sterownik Radeon Software Adrenalin 2020 Edition 19.12.2 WHQL.

Zbiorcza aktualizacja systemu Windows 10 1909 KB4530684

10 grudnia 2019 r. firma Microsoft wydała aktualizację zbiorczą KB4530684 (kompilacja 18363.535) dla aktualizacji systemu Windows 10 z listopada 2019 r. (wersja 1909) na procesorach x86, x64 (amd64), ARM64 i Windows Server 2019 (1909) dla systemów opartych na procesorach x64.

Sterownik NVIDIA Game Ready GeForce 441.66 WHQL

Sterownik NVIDIA GeForce Game Ready 441.66 WHQL obsługuje gry MechWarrior 5: Mercenaries i Detroit: Become Human, a także dodaje obsługę G-SYNC dla monitorów MSI MAG251RX i ViewSonic XG270.

Jak ważna jest pamięć podręczna L3 dla procesorów AMD?

Rzeczywiście, procesory wielordzeniowe mają sens wyposażać w dedykowaną pamięć, która będzie współdzielona przez wszystkie dostępne rdzenie. W tej roli szybka pamięć podręczna trzeciego poziomu (L3) może znacznie przyspieszyć dostęp do najczęściej żądanych danych. Wtedy rdzenie, jeśli to możliwe, nie będą musiały mieć dostępu do wolnej pamięci głównej (RAM).

Przynajmniej w teorii. Ostatnio AMD ogłosił procesor Athlon II X4, czyli model Phenom II X4 bez pamięci podręcznej L3, co sugeruje, że nie jest to aż tak konieczne. Postanowiliśmy bezpośrednio porównać dwa procesory (z pamięcią podręczną L3 i bez niej), aby sprawdzić, jak pamięć podręczna wpływa na wydajność.

Kliknij na zdjęcie aby powiększyć.

Jak działa pamięć podręczna?

Zanim zagłębimy się w testy, ważne jest, aby zrozumieć pewne podstawy. Zasada działania pamięci podręcznej jest dość prosta. Pamięć podręczna buforuje dane jak najbliżej rdzeni przetwarzających procesor, aby ograniczyć żądania procesora do bardziej odległej i powolnej pamięci. Na nowoczesnych platformach stacjonarnych hierarchia pamięci podręcznej obejmuje aż trzy poziomy poprzedzające dostęp do pamięci RAM. Co więcej, pamięci podręczne drugiego, a w szczególności trzeciego poziomu służą nie tylko do buforowania danych. Ich celem jest zapobieganie przeciążeniu magistrali procesora, gdy rdzenie muszą wymieniać informacje.

Uderzenia i chybienia

Skuteczność architektur pamięci podręcznej mierzy się współczynnikiem trafień. Żądania danych, które może obsłużyć pamięć podręczna, uznawane są za trafienia. Jeśli ta pamięć podręczna nie zawiera niezbędnych danych, żądanie jest przekazywane dalej potokiem pamięci i zliczane są chybienia. Oczywiście braki powodują wydłużenie czasu potrzebnego na uzyskanie informacji. W rezultacie w procesie obliczeniowym pojawiają się „bąbelki” (bezczynności) i opóźnienia. Przeciwnie, hity pozwalają zachować maksymalną wydajność.

Wpis do pamięci podręcznej, wyłączność, spójność

Zasady zastępowania określają sposób zwalniania pamięci podręcznej dla nowych wpisów. Ponieważ dane zapisane w pamięci podręcznej muszą ostatecznie pojawić się w pamięci głównej, systemy mogą to zrobić w tym samym czasie, co zapis w pamięci podręcznej (zapis) lub mogą oznaczyć obszary danych jako „brudne” (zapis zwrotny) i zapisać w pamięci po usunięciu z pamięci podręcznej.

Dane na kilku poziomach pamięci podręcznej można przechowywać wyłącznie, to znaczy bez nadmiarowości. Wtedy nie znajdziesz tych samych linii danych w dwóch różnych hierarchiach pamięci podręcznej. Lub pamięci podręczne mogą działać włączająco, to znaczy, że niższe poziomy pamięci podręcznej z pewnością zawierają dane znajdujące się na wyższych poziomach pamięci podręcznej (bliżej rdzenia procesora). AMD Phenom wykorzystuje ekskluzywną pamięć podręczną L3, podczas gdy Intel stosuje strategię włączającej pamięci podręcznej. Protokoły spójności zapewniają integralność i świeżość danych w różnych rdzeniach, poziomach pamięci podręcznej, a nawet procesorach.

Rozmiar pamięci podręcznej

Większa pamięć podręczna może pomieścić więcej danych, ale zwykle zwiększa opóźnienia. Ponadto duża pamięć podręczna zużywa znaczną liczbę tranzystorów procesora, dlatego ważne jest znalezienie równowagi między budżetem tranzystora, rozmiarem matrycy, zużyciem energii i wydajnością/opóźnieniem.

Łączność

Wpisy w pamięci RAM mogą być bezpośrednio mapowane do pamięci podręcznej, co oznacza, że ​​istnieje tylko jedna pozycja pamięci podręcznej dla kopii danych z pamięci RAM, lub mogą być asocjacyjne n-kierunkowo, co oznacza, że ​​istnieje n możliwych lokalizacji w pamięci podręcznej, w których te wpisy dane mogą być przechowywane. Wyższy stopień asocjatywności (aż do całkowicie asocjacyjnych pamięci podręcznych) zapewnia większą elastyczność buforowania, ponieważ istniejące dane w pamięci podręcznej nie muszą być przepisywane. Innymi słowy, wysoki stopień asocjatywności n gwarantuje wyższy współczynnik trafień, ale zwiększa również opóźnienia, ponieważ sprawdzenie wszystkich tych powiązań pod kątem trafienia zajmuje więcej czasu. Zwykle najwyższy stopień powiązania jest uzasadniony dla ostatniego poziomu buforowania, ponieważ jest tam dostępna maksymalna pojemność, a wyszukiwanie danych poza tą pamięcią podręczną spowoduje, że procesor uzyska dostęp do wolnej pamięci RAM.

Oto kilka przykładów: Core i5 i i7 wykorzystują 32 KB pamięci podręcznej L1 z 8-kierunkowym łączeniem na dane i 32 KB pamięci podręcznej L1 z 4-kierunkowym łączeniem na instrukcje. Zrozumiałe jest, że Intel chce, aby instrukcje były dostępne szybciej, a pamięć podręczna danych L1 miała maksymalną liczbę trafień. Pamięć podręczna L2 w procesorach Intel ma 8-kierunkową łączność, a pamięć podręczna Intel L3 jest jeszcze inteligentniejsza, ponieważ implementuje 16-kierunkową łączność w celu maksymalizacji trafień.

Jednak AMD stosuje inną strategię w przypadku procesorów Phenom II X4, które wykorzystują dwukierunkową asocjacyjną pamięć podręczną L1 w celu zmniejszenia opóźnień. Aby zrekompensować ewentualne braki, pojemność pamięci podręcznej została podwojona: 64 KB na dane i 64 KB na instrukcje. Pamięć podręczna L2 ma 8-kierunkową łączność, podobnie jak konstrukcja Intela, ale pamięć podręczna L3 AMD działa w 48-kierunkowej łączności. Jednak decyzji o wyborze jednej architektury pamięci podręcznej nie można ocenić bez uwzględnienia całej architektury procesora. To całkiem naturalne, że wyniki testów mają znaczenie praktyczne, a naszym celem był właśnie praktyczny test całej tej złożonej, wielopoziomowej struktury buforowania.

Każdy nowoczesny procesor ma dedykowaną pamięć podręczną, w której przechowywane są instrukcje procesora i dane, gotowe do użycia niemal natychmiast. Poziom ten jest powszechnie nazywany pamięcią podręczną poziomu 1 lub L1 i został po raz pierwszy wprowadzony w procesorach 486DX. Ostatnio procesory AMD stały się standardem z 64 KB pamięci podręcznej L1 na rdzeń (dla danych i instrukcji), a procesory Intel korzystają z 32 KB pamięci podręcznej L1 na rdzeń (także dla danych i instrukcji)

Pamięć podręczna L1 pojawiła się po raz pierwszy w procesorach 486DX, po czym stała się integralną funkcją wszystkich nowoczesnych procesorów.

Pamięć podręczna drugiego poziomu (L2) pojawiła się we wszystkich procesorach po wydaniu Pentium III, chociaż pierwsze jej wdrożenia na opakowaniach miały miejsce w procesorze Pentium Pro (ale nie na chipie). Nowoczesne procesory są wyposażone w aż do 6 MB wbudowanej pamięci podręcznej L2. Z reguły objętość ta jest dzielona na przykład między dwa rdzenie procesora Intel Core 2 Duo. Typowe konfiguracje L2 zapewniają 512 KB lub 1 MB pamięci podręcznej na rdzeń. Procesory z mniejszą pamięcią podręczną L2 są zwykle dostępne na niższym poziomie cenowym. Poniżej znajduje się schemat wczesnych implementacji pamięci podręcznej L2.

Pentium Pro miał pamięć podręczną L2 w opakowaniu procesora. W kolejnych generacjach Pentium III i Athlona pamięć podręczna L2 była implementowana poprzez oddzielne układy SRAM, co było wówczas bardzo powszechne (1998, 1999).

Późniejsze ogłoszenie technologii procesowej do 180 nm umożliwiło producentom ostateczne zintegrowanie pamięci podręcznej L2 z matrycą procesora.


Pierwsze dwurdzeniowe procesory po prostu wykorzystywały istniejące konstrukcje, które zawierały dwie kości w opakowaniu. AMD wprowadziło dwurdzeniowy procesor na monolitycznym chipie, dodało kontroler pamięci i przełącznik, a Intel po prostu zmontował dwa jednordzeniowe chipy w jednym pakiecie dla swojego pierwszego dwurdzeniowego procesora.


Po raz pierwszy pamięć podręczna L2 została współdzielona pomiędzy dwoma rdzeniami obliczeniowymi procesorów Core 2 Duo. AMD poszło dalej i stworzyło od podstaw swojego pierwszego czterordzeniowego Phenoma, a Intel ponownie użył pary kości, tym razem dwóch dwurdzeniowych kości Core 2, w swoim pierwszym czterordzeniowym procesorze, aby obniżyć koszty.

Pamięć podręczna trzeciego poziomu istnieje od początków procesorów Alpha 21165 (96 KB, procesory wprowadzone w 1995 r.) lub IBM Power 4 (256 KB, 2001 r.). Jednak w architekturach opartych na x86 pamięć podręczna L3 pojawiła się po raz pierwszy w modelach Intel Itanium 2, Pentium 4 Extreme (Gallatin, oba procesory w 2003 r.) i Xeon MP (2006 r.).

Wczesne wdrożenia po prostu zapewniły kolejny poziom w hierarchii pamięci podręcznej, chociaż nowoczesne architektury wykorzystują pamięć podręczną L3 jako duży, współdzielony bufor do międzyrdzeniowego przesyłania danych w procesorach wielordzeniowych. Podkreśla to wysoki stopień n asocjatywności. Lepiej szukać danych w pamięci podręcznej nieco dłużej, niż doprowadzić do sytuacji, w której kilka rdzeni korzysta z bardzo wolnego dostępu do głównej pamięci RAM. AMD po raz pierwszy wprowadziło pamięć podręczną L3 w procesorze do komputerów stacjonarnych ze wspomnianą już linią Phenom. 65 nm Phenom X4 zawierał 2 MB współdzielonej pamięci podręcznej L3, a nowoczesny 45 nm Phenom II X4 ma już 6 MB współdzielonej pamięci podręcznej L3. Procesory Intel Core i7 i i5 wykorzystują 8 MB pamięci podręcznej L3.

Nowoczesne procesory czterordzeniowe mają dedykowane pamięci podręczne L1 i L2 dla każdego rdzenia, a także dużą pamięć podręczną L3 współdzieloną przez wszystkie rdzenie. Udostępniona pamięć podręczna L3 pozwala także na wymianę danych, nad którymi rdzenie mogą pracować równolegle.


Jednym z ważnych czynników zwiększających wydajność procesora jest obecność pamięci podręcznej, a raczej jej objętość, szybkość dostępu i dystrybucja między poziomami.

Od dłuższego czasu prawie wszystkie procesory są wyposażone w tego typu pamięć, co po raz kolejny potwierdza przydatność jej obecności. W tym artykule porozmawiamy o strukturze, poziomach i praktycznym przeznaczeniu pamięci podręcznej, jako bardzo ważnej cechy procesora.

Co to jest pamięć podręczna i jej struktura

Pamięć podręczna to ultraszybka pamięć używana przez procesor do tymczasowego przechowywania najczęściej używanych danych. Tak w skrócie można opisać ten typ pamięci.

Pamięć podręczna zbudowana jest na przerzutnikach, które z kolei składają się z tranzystorów. Grupa tranzystorów zajmuje znacznie więcej miejsca niż te same kondensatory, które tworzą pamięć RAM. Pociąga to za sobą wiele trudności w produkcji, a także ograniczenia wolumenowe. Dlatego pamięć podręczna jest pamięcią bardzo kosztowną, a jednocześnie ma znikome wolumeny. Ale z tej struktury wynika główna zaleta takiej pamięci - szybkość. Ponieważ przerzutniki nie wymagają regeneracji, a czas opóźnienia bramki, na której są zamontowane, jest niewielki, czas na przełączenie przerzutnika z jednego stanu do drugiego następuje bardzo szybko. Dzięki temu pamięć podręczna może działać z tymi samymi częstotliwościami, co nowoczesne procesory.

Ważnym czynnikiem jest także umiejscowienie pamięci podręcznej. Znajduje się on na samym chipie procesora, co znacznie skraca czas dostępu. Wcześniej pamięć podręczna niektórych poziomów znajdowała się poza chipem procesora, na specjalnym chipie SRAM gdzieś na płycie głównej. Obecnie prawie wszystkie procesory mają pamięć podręczną umieszczoną w chipie procesora.

Do czego służy pamięć podręczna procesora?

Jak wspomniano powyżej, głównym celem pamięci podręcznej jest przechowywanie danych często używanych przez procesor. Pamięć podręczna jest buforem, do którego ładowane są dane i pomimo niewielkich rozmiarów (około 4-16 MB) w nowoczesnych procesorach zapewnia znaczny wzrost wydajności w każdej aplikacji.

Aby lepiej zrozumieć potrzebę pamięci podręcznej, wyobraźmy sobie organizację pamięci komputera jak w biurze. Pamięć RAM będzie szafką zawierającą foldery, do których księgowy okresowo uzyskuje dostęp w celu pobrania dużych bloków danych (tj. folderów). A stół będzie pamięcią podręczną.

Na biurku księgowego lądują elementy, do których ten wraca kilka razy w ciągu godziny. Mogą to być na przykład numery telefonów, przykłady dokumentów. Tego typu informacje znajdują się bezpośrednio na stole, co z kolei zwiększa szybkość dostępu do nich.

W ten sam sposób można dodać dane z dużych bloków danych (folderów) do tabeli w celu szybkiego wykorzystania, na przykład dokumentu. Gdy dokument ten nie jest już potrzebny, jest on umieszczany z powrotem w szafce (do pamięci RAM), w ten sposób czyszcząc tabelę (pamięć podręczną) i zwalniając tę ​​tabelę na nowe dokumenty, które będą używane w następnym okresie.

Również w przypadku pamięci podręcznej, jeśli są jakieś dane, do których najprawdopodobniej będzie można ponownie uzyskać dostęp, dane z pamięci RAM są ładowane do pamięci podręcznej. Bardzo często dzieje się to poprzez wspólne ładowanie danych, które najprawdopodobniej zostaną użyte po danych bieżących. Oznacza to, że istnieją założenia dotyczące tego, co zostanie użyte „po”. Są to złożone zasady działania.

Poziomy pamięci podręcznej procesora

Nowoczesne procesory są wyposażone w pamięć podręczną, która często składa się z 2 lub 3 poziomów. Oczywiście są wyjątki, ale często tak się dzieje.

Ogólnie rzecz biorąc, mogą istnieć następujące poziomy: L1 (pierwszy poziom), L2 (drugi poziom), L3 (trzeci poziom). Teraz trochę więcej szczegółów na temat każdego z nich:

Pamięć podręczna pierwszego poziomu (L1) to najszybszy poziom pamięci podręcznej, który współpracuje bezpośrednio z rdzeniem procesora. Dzięki tej ścisłej interakcji poziom ten ma najkrótszy czas dostępu i działa na częstotliwościach bliskich procesorowi. Jest to bufor pomiędzy procesorem a pamięcią podręczną drugiego poziomu.

Rozważymy wolumeny na wysokowydajnym procesorze Intel Core i7-3770K. Procesor ten jest wyposażony w 4x32 KB pamięci podręcznej L1 4 x 32 KB = 128 KB. (32 KB na rdzeń)

Pamięć podręczna drugiego poziomu (L2) – drugi poziom jest większy od pierwszego, ale w rezultacie ma niższą „charakterystykę prędkości”. W związku z tym służy jako bufor pomiędzy poziomami L1 i L3. Jeśli ponownie spojrzymy na nasz przykład Core i7-3770 K, wówczas rozmiar pamięci podręcznej L2 wynosi 4x256 KB = 1 MB.

Pamięć podręczna trzeciego poziomu (L3) – trzeci poziom ponownie jest wolniejszy niż dwa poprzednie. Ale nadal jest znacznie szybszy niż pamięć RAM. Rozmiar pamięci podręcznej L3 w i7-3770K wynosi 8 MB. Jeśli poprzednie dwa poziomy są wspólne dla każdego rdzenia, wówczas poziom ten jest wspólny dla całego procesora. Liczba jest dość solidna, ale nie wygórowana. Ponieważ na przykład dla procesorów z serii Extreme, takich jak i7-3960X, jest to 15 MB, a dla niektórych nowych procesorów Xeon ponad 20.

we-it.net

Do czego służy pamięć podręczna i ile jest potrzebna?

Nie mówimy o gotówce, ale o pamięci podręcznej procesora i nie tylko. Handlarze dokonali kolejnego komercyjnego fetyszu związanego z pojemnością pamięci podręcznej, zwłaszcza pamięcią podręczną procesorów centralnych i dysków twardych (karty graficzne też to mają, ale jeszcze do tego nie dotarli). Mamy więc procesor XXX z 1 MB pamięci podręcznej L2 i dokładnie ten sam procesor XYZ z 2 MB pamięci podręcznej. Zgadnij, który jest lepszy? Ach – nie rób tego od razu!

Pamięć podręczna to bufor przechowujący to, co można i/lub należy odłożyć na później. Procesor wykonuje pracę i pojawiają się sytuacje, gdy trzeba gdzieś przechowywać dane pośrednie. Cóż, oczywiście w pamięci podręcznej! - w końcu jest o rzędy wielkości szybszy od RAM-u, bo... znajduje się w samym procesorze i zwykle działa z tą samą częstotliwością. A potem, po pewnym czasie, wyłapie te dane i przetworzy je ponownie. Z grubsza rzecz biorąc, jest to jak sortownik ziemniaków na taśmie, który za każdym razem, gdy natknie się na coś innego niż ziemniaki (marchew), wrzuca to do pudełka. A gdy się zapełni, wstaje i przenosi do sąsiedniego pokoju. W tym momencie przenośnik stoi w miejscu i obserwuje się przestoje. W tej analogii objętość pudełka jest pamięcią podręczną. A ile potrzeba - 1 MB czy 12? Oczywiste jest, że jeśli jego objętość jest mała, będziesz musiał poświęcić zbyt dużo czasu na usunięcie i będzie to proste, ale po określonej objętości dalsze zwiększanie nic nie da. No cóż, sortownik będzie miał skrzynkę na 1000 kg marchwi - ale nie będzie miał ich tak dużo przez całą zmianę i nie sprawi, że będzie DWA RAZY SZYBSZY! Jest jeszcze jedna subtelność - duża pamięć podręczna może po pierwsze powodować zwiększenie opóźnień w dostępie do niej, a jednocześnie zwiększa się prawdopodobieństwo wystąpienia w niej błędów, na przykład podczas podkręcania - po drugie. (Możesz przeczytać o tym, JAK określić stabilność/niestabilność procesora w tym przypadku i dowiedzieć się, że błąd występuje w jego pamięci podręcznej oraz przetestować L1 i L2 tutaj.) Po trzecie, pamięć podręczna zajmuje przyzwoitą ilość obszaru chipa, a budżet tranzystora obwodu procesora. To samo dotyczy pamięci podręcznej dysków twardych. A jeśli architektura procesora jest silna, będzie miał pamięć podręczną o wielkości 1024 KB lub więcej, wymaganą w wielu aplikacjach. Jeśli masz szybki dysk twardy, odpowiednie będzie 16 MB lub nawet 32 ​​MB. Ale żadna ilość 64 MB pamięci podręcznej nie przyspieszy, jeśli jest to wersja zwana zieloną wersją (Green WD) z prędkością 5900 zamiast wymaganych 7200, nawet jeśli ta ostatnia ma 8 MB. Następnie procesory Intel i AMD korzystają z tej pamięci podręcznej w różny sposób (ogólnie rzecz biorąc, AMD jest bardziej wydajne, a ich procesory często czują się komfortowo przy mniejszych wartościach). Poza tym Intel ma współdzieloną pamięć podręczną, ale AMD ma ją osobno dla każdego rdzenia. Najszybsza pamięć podręczna L1 w procesorach AMD to 64 KB na dane i instrukcje, czyli dwukrotnie więcej niż w przypadku Intela. Pamięć podręczna L3 trzeciego poziomu jest zwykle obecna w najlepszych procesorach, takich jak AMD Phenom II 1055T X6 Socket AM3 2,8 GHz lub konkurencyjny Intel Core i7-980X. Po pierwsze, gry uwielbiają duże ilości pamięci podręcznej. A wiele profesjonalnych aplikacji NIE lubi pamięci podręcznej (patrz. Komputer do renderowania, edycji wideo i zastosowań profesjonalnych). Dokładniej, ci, którzy są najbardziej wymagający, są mu na ogół obojętni. Ale zdecydowanie nie powinieneś wybierać procesora na podstawie rozmiaru pamięci podręcznej. Stary Pentium 4 w swoich najnowszych odsłonach miał 2 MB pamięci podręcznej przy częstotliwościach roboczych znacznie przekraczających 3 GHz - porównaj jego wydajność z tanim dwurdzeniowym Celeronem E1***, pracującym na częstotliwościach około 2 GHz. Nie zostawi kamienia obojętnie na starego człowieka. Bardziej odpowiednim przykładem jest dwurdzeniowy procesor E8600 o wysokiej częstotliwości, który kosztuje prawie 200 dolarów (najwyraźniej ze względu na 6 MB pamięci podręcznej) i Athlon II X4-620 2,6 GHz, który ma tylko 2 MB. Nie powstrzymuje to jednak Athlone od pocięcia konkurenta na kawałki.

Jak widać na wykresach, żadna pamięć podręczna nie jest w stanie zastąpić dodatkowych rdzeni ani w złożonych programach, ani w grach wymagających procesora. Athlon z 2 MB pamięci podręcznej (czerwony) z łatwością pokonuje Cor2Duo z 6 MB pamięci podręcznej, nawet przy niższej częstotliwości i prawie o połowę niższym koszcie. Ponadto wiele osób zapomina, że ​​pamięć podręczna jest obecna na kartach graficznych, ponieważ, ogólnie rzecz biorąc, mają one również procesory. Niedawnym przykładem jest karta graficzna GTX460, w której udaje się nie tylko zmniejszyć pojemność magistrali i pamięci (o czym kupujący się domyśli), ale także pamięć podręczną modułu cieniującego, odpowiednio, z 512 Kb do 384 Kb (o czym kupujący NIE będzie się domyślał) ). A to również zwiększy swój negatywny wpływ na produktywność. Interesujące będzie również sprawdzenie zależności wydajności od rozmiaru pamięci podręcznej. Sprawdźmy, jak szybko rośnie wraz ze wzrostem rozmiaru pamięci podręcznej na przykładzie tego samego procesora. Jak wiadomo, procesory serii E6***, E4*** i E2*** różnią się jedynie wielkością pamięci podręcznej (odpowiednio 4, 2 i 1 MB każdy). Pracując na tej samej częstotliwości 2400 MHz, pokazują następujące wyniki.

Jak widać, wyniki nie różnią się zbytnio. Powiem więcej – gdyby w grę wchodził procesor o pojemności 6MB, wynik wzrósłby nieco bardziej, bo procesory osiągają nasycenie. Jednak w przypadku modeli z 512 Kb spadek byłby zauważalny. Innymi słowy, 2 MB wystarczy nawet na gry. Podsumowując, możemy wyciągnąć następujący wniosek - pamięć podręczna jest dobra, gdy wszystkiego innego jest JUŻ dużo. Naiwnością i głupotą jest zmienianie szybkości dysku twardego lub liczby rdzeni procesora pod kątem wielkości pamięci podręcznej przy tym samym koszcie, ponieważ nawet najbardziej pojemna skrzynka sortująca nie zastąpi innego sortownika. Ale są też dobre przykłady.. Za na przykład Pentium Dual-Core we wczesnej wersji procesu 65 nm miał 1 MB pamięci podręcznej dla dwóch rdzeni (seria E2160 i podobne), a późniejsza wersja 45 nm serii E5200 nadal ma 2 MB, przy wszystkich innych parametrach bez zmian ( i co najważniejsze - CENA). Oczywiście należy wybrać to drugie.

compua.com.ua

Co to jest pamięć podręczna, dlaczego jest potrzebna i jak działa?

Jakie jest najbrudniejsze miejsce na komputerze? Myślisz, że to kosz? Foldery użytkownika? System chłodzenia? Źle zgadłeś! Najbrudniejszym miejscem jest skrytka! W końcu trzeba go stale czyścić!

W rzeczywistości na komputerze jest wiele pamięci podręcznych i służą one nie jako wysypisko śmieci, ale jako akceleratory sprzętu i aplikacji. Skąd zdobyli reputację „systemowego zsypu śmieci”? Dowiedzmy się, czym jest pamięć podręczna, co to jest, jak działa i dlaczego należy ją od czasu do czasu czyścić.

Pamięć podręczna lub pamięć podręczna to specjalny magazyn często używanych danych, do którego można uzyskać dostęp dziesiątki, setki i tysiące razy szybciej niż pamięć RAM lub inne nośniki pamięci.

Aplikacje (przeglądarki internetowe, odtwarzacze audio i wideo, edytory baz danych itp.), komponenty systemu operacyjnego (pamięć podręczna miniatur, pamięć podręczna DNS) i sprzęt (pamięć podręczna procesora L1-L3, bufor ramki graficznej) mają własny układ pamięci podręcznej, bufory pamięci). . Jest realizowany na różne sposoby - w oprogramowaniu i sprzęcie.

  • Pamięć podręczna programu to po prostu oddzielny folder lub plik, do którego ładowane są na przykład zdjęcia, menu, skrypty, treści multimedialne i inna zawartość odwiedzanych witryn. To właśnie do tego folderu przeglądarka najpierw zagląda po ponownym otwarciu strony internetowej. Stronicowanie niektórych treści z pamięci lokalnej przyspiesza ich ładowanie i zmniejsza ruch sieciowy.

  • W urządzeniach pamięci masowej (w szczególności dyskach twardych) pamięcią podręczną jest oddzielny układ RAM o pojemności 1-256 Mb, umieszczony na płytce elektroniki. Otrzymuje informacje odczytane z warstwy magnetycznej, a nie załadowane jeszcze do pamięci RAM, a także dane, których najczęściej żąda system operacyjny.

  • Nowoczesny procesor centralny zawiera 2-3 główne poziomy pamięci podręcznej (zwanej także pamięcią o ultralosowym dostępie), rozmieszczonych w postaci modułów sprzętowych w tym samym chipie. Najszybszy i najmniejszy rozmiar (32–64 Kb) to pamięć podręczna poziomu 1 (L1) - działa z tą samą częstotliwością co procesor. L2 zajmuje średnią pozycję pod względem szybkości i pojemności (od 128 Kb do 12 Mb). A L3 jest najwolniejszy i najbardziej obszerny (do 40 Mb) i jest nieobecny w niektórych modelach. Szybkość L3 jest niska tylko w porównaniu z szybszymi braćmi, ale jest też setki razy szybsza niż najbardziej wydajna pamięć RAM.

Pamięć flash procesora służy do przechowywania stale używanych danych pompowanych z pamięci RAM i instrukcji kodu maszynowego. Im więcej, tym szybszy procesor.

Obecnie trzy poziomy buforowania nie są już limitem. Wraz z pojawieniem się architektury Sandy Bridge firma Intel zaimplementowała w swoich produktach dodatkową pamięć podręczną L0 (przeznaczoną do przechowywania odszyfrowanych mikrorozkazów). Najbardziej wydajne procesory mają również pamięć podręczną czwartego poziomu, wykonaną w postaci osobnego chipa.

Schematycznie interakcja poziomów pamięci podręcznej L0-L3 wygląda następująco (na przykładzie Intel Xeon):

W ludzkim języku o tym, jak to wszystko działa

Aby zrozumieć działanie pamięci podręcznej, wyobraźmy sobie osobę pracującą przy biurku. Foldery i dokumenty, z których stale korzysta, znajdują się na stole (w pamięci podręcznej). Aby uzyskać do nich dostęp, wystarczy wyciągnąć rękę.

Rzadziej potrzebne mu dokumenty są przechowywane w pobliżu na półkach (w pamięci RAM). Aby je zdobyć trzeba wstać i przejść kilka metrów. A to, z czym dana osoba aktualnie nie pracuje, jest archiwizowane (zapisywane na dysku twardym).

Im szersza tabela, tym więcej dokumentów zmieści się na niej, co oznacza, że ​​pracownik będzie mógł szybko uzyskać dostęp do większej ilości informacji (im większa pojemność pamięci podręcznej, tym teoretycznie szybciej działa program lub urządzenie).

Czasem popełnia błędy – trzyma na biurku papiery zawierające błędne informacje i wykorzystuje je w swojej pracy. W rezultacie spada jakość jego pracy (błędy pamięci podręcznej prowadzą do nieprawidłowego działania programów i sprzętu). Aby naprawić sytuację, pracownik musi wyrzucić dokumenty z błędami i umieścić na swoim miejscu właściwe (wyczyścić pamięć podręczną).

Tabela ma ograniczoną powierzchnię (pamięć podręczna ma ograniczoną pojemność). Czasami można ją rozszerzyć, na przykład przesuwając drugą tabelę, a czasami nie (rozmiar pamięci podręcznej można zwiększyć, jeśli program przewiduje taką możliwość; pamięci podręcznej sprzętowej nie można zmienić, ponieważ jest ona zaimplementowana sprzętowo) .

Innym sposobem na przyspieszenie dostępu do większej liczby dokumentów, niż jest w stanie pomieścić biurko, jest poproszenie asystenta o podawanie dokumentów pracownika z półki (system operacyjny może przeznaczyć część niewykorzystanej pamięci RAM na buforowanie danych urządzenia). Ale i tak jest to wolniejsze niż zabranie ich ze stołu.

Posiadane dokumenty muszą mieć związek z bieżącymi zadaniami. Sam pracownik musi to monitorować. Trzeba regularnie robić porządek (usuwanie nieistotnych danych z pamięci podręcznej spada na barki aplikacji, które z niej korzystają; niektóre programy mają funkcję automatycznego czyszczenia pamięci podręcznej).

Jeśli pracownik zapomni zadbać o porządek w miejscu pracy i na bieżąco aktualizować dokumentację, może sam sporządzić harmonogram sprzątania biurka i wykorzystać go jako przypomnienie. W ostateczności powierz to asystentowi (jeśli aplikacja zależna od pamięci podręcznej zwolniła się lub często pobiera niepotrzebne dane, korzystaj z narzędzi do czyszczenia pamięci podręcznej zgodnie z harmonogramem lub wykonuj tę manipulację ręcznie co kilka dni).

Właściwie wszędzie spotykamy się z „funkcjami buforowania”. Dotyczy to kupowania artykułów spożywczych na przyszłość, różnych czynności, które wykonujemy mimochodem, w tym samym czasie itp. W zasadzie to wszystko oszczędza nam niepotrzebnego zamieszania i niepotrzebnych ruchów, usprawnia nam życie i ułatwia pracę. Komputer robi to samo. Krótko mówiąc, gdyby nie było pamięci podręcznej, działałoby to setki i tysiące razy wolniej. I pewnie by nam się to nie podobało.

f1comp.ru

Pamięć podręczna, pamięć podręczna, gotówka - pamięć. Do czego służy pamięć podręczna? Wpływ rozmiaru i szybkości pamięci podręcznej na wydajność.

Pamięć podręczna - pamięć (cache, cash, bufor - ang.) - stosowana w urządzeniach cyfrowych jako szybki schowek. Pamięć podręczną można znaleźć w urządzeniach komputerowych, takich jak dyski twarde, procesory, karty graficzne, karty sieciowe, napędy CD i wiele innych.

Zasada działania i architektura pamięci podręcznej mogą się znacznie różnić.

Na przykład pamięć podręczna może służyć jako zwykły schowek. Urządzenie przetwarza dane i przekazuje je do szybkiego bufora, skąd sterownik przesyła dane do interfejsu. Taka pamięć podręczna ma na celu zapobieganie błędom, sprzętowe sprawdzanie integralności danych lub kodowanie sygnału z urządzenia na sygnał zrozumiały dla interfejsu bez opóźnień. Układ ten stosowany jest np. w napędach CD/DVD.

W innym przypadku pamięć podręczna może służyć do przechowywania często używanego kodu i tym samym przyspieszania przetwarzania danych. Oznacza to, że urządzenie nie musi ponownie obliczać ani wyszukiwać danych, co zajęłoby znacznie więcej czasu niż odczytywanie ich z pamięci podręcznej. W tym przypadku bardzo ważną rolę odgrywa rozmiar i szybkość pamięci podręcznej.


Architekturę tę najczęściej można spotkać na dyskach twardych, dyskach SSD i jednostkach centralnych (CPU).

Gdy urządzenia działają, do pamięci podręcznej można załadować specjalne oprogramowanie sprzętowe lub programy dyspozytorskie, które w przypadku pamięci ROM (pamięć tylko do odczytu) działałyby wolniej.

Większość nowoczesnych urządzeń korzysta z mieszanego typu pamięci podręcznej, która może służyć zarówno jako schowek, jak i przechowywać często używany kod.

Istnieje kilka bardzo ważnych funkcji zaimplementowanych dla pamięci podręcznej procesorów i układów wideo.

Łączenie jednostek wykonawczych. Jednostki centralne i procesory wideo często korzystają z szybkiej współdzielonej pamięci podręcznej pomiędzy rdzeniami. Odpowiednio, jeśli jeden rdzeń przetworzył informacje i znajduje się w pamięci podręcznej, a otrzymane zostanie polecenie wykonania tej samej operacji lub pracy z tymi danymi, wówczas dane nie zostaną ponownie przetworzone przez procesor, ale zostaną pobrane z pamięć podręczną do dalszego przetwarzania. Jądro zostanie odciążone w celu przetwarzania innych danych. To znacznie zwiększa wydajność w podobnych, ale złożonych obliczeniach, szczególnie jeśli pamięć podręczna jest duża i szybka.

Udostępniona pamięć podręczna pozwala także rdzeniom na bezpośrednią pracę z nią, z pominięciem wolnej pamięci RAM.

Pamięć podręczna instrukcji. Istnieje albo współdzielona, ​​bardzo szybka pamięć podręczna L1 dla instrukcji i innych operacji, albo dedykowana dla nich pamięć podręczna. Im więcej instrukcji jest przechowywanych w procesorze, tym większa jest wymagana pamięć podręczna instrukcji. Zmniejsza to opóźnienia pamięci i pozwala na niemal niezależne działanie bloku instrukcji. Gdy jest pełny, blok instrukcji zaczyna okresowo przechodzić w stan bezczynności, co spowalnia szybkość obliczeń.

Inne funkcje i cechy.

Warto zauważyć, że w procesorach (jednostkach centralnych) stosowana jest sprzętowa korekcja błędów (ECC), ponieważ niewielki błąd w pamięci podręcznej może prowadzić do jednego ciągłego błędu podczas dalszego przetwarzania tych danych.

W CPU i GPU istnieje hierarchia pamięci podręcznej, która pozwala na oddzielenie danych dla poszczególnych rdzeni i ogólnych. Chociaż prawie wszystkie dane z pamięci podręcznej drugiego poziomu są nadal kopiowane na trzeci, ogólny poziom, ale nie zawsze. Pierwszy poziom pamięci podręcznej jest najszybszy, a każdy kolejny jest wolniejszy, ale ma większy rozmiar.

W przypadku procesorów za normalne uważa się trzy lub mniej poziomów pamięci podręcznej. Pozwala to zachować równowagę pomiędzy szybkością, rozmiarem pamięci podręcznej i rozpraszaniem ciepła. Trudno jest znaleźć więcej niż dwa poziomy pamięci podręcznej w procesorach wideo.

Rozmiar pamięci podręcznej, wpływ na wydajność i inne cechy.

Oczywiście im większa pamięć podręczna, tym więcej danych może przechowywać i przetwarzać, ale tutaj pojawia się poważny problem.

Duża pamięć podręczna oznacza duży budżet tranzystora. W jednostkach przetwarzających serwer (CPU) pamięć podręczna może wykorzystywać do 80% budżetu tranzystora. Po pierwsze wpływa to na koszt końcowy, a po drugie na wzrost zużycia energii i odprowadzania ciepła, który jest nieporównywalny z kilkuprocentową wydajnością.