Multicore en synchronisatie

Wat legt een geheugenconsistentiemodel vast?

  1. ADe grootte van de cacheregel en het aantal sets
  2. BHet type transistors dat voor het DRAM-hoofdgeheugen wordt gebruikt
  3. CIn welke volgorde de lees- en schrijfacties van een core naar meerdere adressen voor andere cores zichtbaar kunnen zijn
Antwoord en toelichting tonen

Antwoord: C. In welke volgorde de lees- en schrijfacties van een core naar meerdere adressen voor andere cores zichtbaar kunnen zijn

Voor betere prestaties kan een CPU de volgorde van geheugenbewerkingen wijzigen, bijvoorbeeld door schrijfacties in een store buffer te verzamelen of lezen voor te trekken. Binnen één core is dit zo gemaakt dat het resultaat niet verandert, maar voor andere cores kan de volgorde verwisseld lijken. Het geheugenconsistentiemodel legt vast welke verwisselingen kunnen optreden en is de afspraak waarmee programmeurs correcte synchronisatie kunnen schrijven.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Multicore en synchronisatie

  1. Welke uitleg over sequentiële consistentie (sequential consistency) is juist?
  2. De bovenstaande twee threads worden tegelijk op verschillende cores uitgevoerd (er is geen herordening door de compiler). Welke uitkomst treedt niet op bij sequentiële consistentie, maar kan wel optreden bij echte CPU's zoals x86?
  3. Welke eigenschap van het geheugenconsistentiemodel van x86 (TSO, Total Store Order) is juist?
  4. Wat is juist over zwakke geheugenconsistentiemodellen zoals die van ARM en RISC-V (RVWMO)?
  5. Wat is de juiste rol van een geheugenbarrière-instructie (fence)?

Vergelijkingen bij dit onderwerp