Co to jest spójność pamięci podręcznej?

Spójność pamięci podręcznej jest naturalnym problemem, który pojawia się, gdy dostęp do zestawu danych systemu jest zmieniany przez wielu agentów. Podstawowym obszarem architektury komputera, w którym staje się to problemem, są komputery wieloprocesorowe. Każdy procesor w komputerze wieloprocesorowym ma własną pamięć podręczną, która ładuje i przechowuje informacje z pamięci o dostępie swobodnym (RAM). Gdy dwa procesory uzyskują dostęp do tego samego obszaru pamięci, spójność pamięci podręcznej zostałaby utracona, gdyby nie podjęto pewnych środków ostrożności.

Bez spójności pamięci podręcznej system wieloprocesorowy nie byłby w stanie funkcjonować. Istnieje kilka metod opracowanych w celu rozwiązania tego problemu i uniknięcia potencjalnych problemów. Spójność na podstawie katalogu, szpiegowanie i snarfing to trzy metody zapobiegania utracie spójności pamięci podręcznej.

Spójność na podstawie katalogu działa jak filtr w celu zapewnienia spójności. Dane są umieszczane w części pamięci, która jest dostępna dla wszystkich procesorów. Gdy informacje przechowywane w tym obszarze pamięci zostaną zmienione, system albo zaktualizuje pamięć podręczną, albo ją unieważni.

Szpiegowanie wymaga od procesora monitorowania wszystkich dostępów do pamięci, które zostały buforowane. Dzięki temu procesor wie, kiedy wystąpiła operacja zapisu. Wiedząc, kiedy nastąpi operacja zapisu, procesor może zaktualizować swoją pamięć podręczną.

Snarfing jest dość podobny do węszenia. Snarfing obejmuje nie tylko monitorowanie dostępu do pamięci w pamięci podręcznej, ale także monitorowanie rzeczywistych informacji przechowywanych w pamięci. Gdy nastąpi zapis w pamięci, pamięć podręczną można zaktualizować o nowe informacje.

Systemy koherencji oparte na katalogach mają stosunkowo duże opóźnienia, co powoduje wolniejsze przetwarzanie. Niższe wymagania dotyczące przepustowości umożliwiają stosowanie systemów koherencji opartych na katalogach w aplikacjach koherencji pamięci podręcznej na dużą skalę. Im więcej procesorów używa system, tym więcej korzyści może mieć dzięki korzystaniu z systemu spójności opartego na katalogu.

Szpiegowanie jest znacznie szybszą metodą. Ta metoda wymaga większej przepustowości niż podejście oparte na katalogu. Metodę tę można skutecznie wykorzystać w systemach, które mają stosunkowo mało procesorów.

Snarfing zwykle nie jest stosowany jako metoda utrzymania spójności pamięci podręcznej. Wynika to przede wszystkim z tego, że snarfing wymaga użycia większej ilości zasobów w porównaniu z metodami szpiegującymi i opartymi na katalogach. Aby system łączenia mógł działać, musi śledzić zarówno adresy pamięci, jak i dane przechowywane w tych obszarach pamięci. Ilość pasma i przetwarzania zajmowana przez tę metodę sprawia, że ​​jest to niepożądane w przypadku większości aplikacji utrzymujących spójność pamięci podręcznej.

INNE JĘZYKI

Czy ten artykuł był pomocny? Dzięki za opinie Dzięki za opinie

Jak możemy pomóc? Jak możemy pomóc?