Multiprocessor cache, lock..

Fórumok

Hogyan oldjak meg több processzoros rendszereken, hogy a cechekben ne lehessen eltérő adat ?
Minden architektura érdekel.

x86 lock. ez mit jelent HW számara ?

Hozzászólások

Nézzunk akkor egy egyszerű példát.
Ezen oldal alapjan meg mindig megtortenhet:
P1 , P2 processor egy-egy cache line jan benne van X cimen talahato adat.
P1 modositja , a cacheben az adatot, de nem irja ki mivel, meg kellhet, ill. nem tortent cache miss, ami miatt ki kene irnia.
P2 es modositja X+1 meg mindig ugyan azon a cimen levo adatot, es egy missnel kiirja.. P1 ervenyteleniti a cachet
P3 mar csak P2 altal modositott adatokat lathatja, P1 modositasai elvesznek szamara.

Nem jelzi E P1 P2 nek, hogy amikor o olvassa be X X+1 cimu adatott tartalmazo reszt az neki is meg vala? . Ha igen hogyan jelzi ?
Ha igy egy kozosnek cashelt reszen modositas tortenik, ekkor azonnal kiirja jelezven ezzel mas processornak, hogy invalid.

(ccNUMA rendszereknel meg ugyebar nem is kozos a cim bussz igy meg tobb preblema lehet..)

Christoph Lameter clameter[SPAMATELNI_ROSSZ]sgi(PöTT)com

turul szerintem vele beszélgessél el, ha nagyon-nagyon érdekel a dolog :) , slub és egyébb memória / cache-es kapcsolatos dolgokat szokott csinálni és főkén numa rendszerekkel foglalkozik.

gondolkusan logikszani (R)
katt