Multicore en synchronisatie
Waarom wordt in systemen met veel cores directory-gebaseerde coherentie gebruikt in plaats van snooping?
- AOmdat wordt bijgehouden welke core elke regel heeft en alleen de betrokken cores worden geïnformeerd, zodat het verkeer afneemt
- BOmdat bij de directory-methode geen cache nodig is
- COmdat bij de directory-methode bij elke schrijfactie alle cores kunnen worden geïnformeerd
Antwoord en toelichting tonen
Antwoord: A. Omdat wordt bijgehouden welke core elke regel heeft en alleen de betrokken cores worden geïnformeerd, zodat het verkeer afneemt
Bij de directory-methode wordt per regel een tabel (directory) bijgehouden met welke cores een kopie hebben en in welke toestand. Bij een schrijfactie wordt in de directory gekeken en alleen naar de cores met een kopie een ongeldigverklaringsverzoek gestuurd. Omdat dit minder verkeer geeft dan snooping, dat alle caches tegelijk informeert, wordt het gebruikt in onder meer CPU's voor servers met enkele tientallen cores of meer.