Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

L3 cache na multicore CPU i multithreaded aplikacija

  • 2 odgovora
  • 2.977 pregleda

Najnovija ↓

L3 cache na multicore CPU i multithreaded aplikacija 06.03.2011. u 15:04 · pre 191 mesec #1
Nedavno sam poceo razvoj multithreaded aplikacije koriscenjem WinAPI/MFC/STL-a sa planom da kasnije to razvijem u openmp ili drugoj biblioteci. Aplikacija alocira vecu kolicinu memorije u kolekcionim klasama sa kojima aktivno radi pristupajuci elementima u ne-sekvencijalnom redu.



Na dijagramu se vidi da svaki core ima sopstveni L1 i L2 cache. Poseban bus postoji izmedju svakog core-a i L3 cache-a.
Ako dva ili tri core-a (thread-a) u isto vreme pristupaju L3 cache-u, sta se desava? Da li postoji implementacija lock mehanizama, pa samo jedan core u jednom momentu moze da pristupi L3 cache-u?
Da li svaki core zasebno adresira L3 cache (odn. da li postoji memorijski kontroler L3 cache-a)?
Drugo (u slucaju Phenom-a) iz dijagrama se vidi da postoji samo jedan bus prema memorijskom kontroleru. Da li to znaci da L3 cache moze da se update-uje samo po zahtevu jednog po jednog core-a u slucaju L3 cache miss-a?
Sve ovo me interesuje zbog dubljeg saznanja PC arhitekture i da bih eventualno mogao da optimizujem program.

Pozdrav
Re: L3 cache na multicore CPU i multithreaded aplikacija 06.03.2011. u 16:39 · pre 191 mesec #3
Hvala, ovo je interesantan podatak:

Citat:

Another aspect makes the L3 cache unusual is that it is not fed from memory. Rather, it serves as a spill-over cache for items evicted from the L2 cache.


Citat:

AMD has not published figures on the latency of data access in the L3 cache, so it's not possible currently to know how much faster.


Citat:

If multiple cores are going to work on the same data structure, do so in parallel-that is, at the same time. This enables the common data item to reside in the shared cache and so it lowers overall cache loading.


U tekstu se spominje i cache manager ali ne mogu da nadjem da li je on per core ili per cpu(jedino ako to nije cache control per cpu)? Nije mi jasno i zasto nisu na dijagramu u tom slucaju direktno spojili L1 cache sa IMC-om (barem je tako objasnjeno u tekstu).
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme