Hirdetés

Új hozzászólás Aktív témák

  • DraXoN

    addikt

    LOGOUT blog

    válasz Duddi #11 üzenetére

    L1 biztos nem kerül ki CPU mellől, még ha tokozáson belül van is, túl lassú lenne, eleve minél nagyobb egy memória csomag annál lassabb a feldolgozása mert a vezérlőjének bonyolultabbnak kell lenni, L2 kivezetése... csak-csak, de arra se látok sok esélyt, L3 már esélyes lenne L2 meg megkapja ami felszabadul az L3 területéről.

    L1 azért csak pár kilobite, hogy tényleg gyors legyen, mivel azonos lapkán van, simán lehetne nagyobb pl. az L2 rovására, de nem növelik jellemzően az előbbit (architektúra függő is, hogy van-e értelme).

    Egyébként a modern cpu-k előre dolgoznak, nem kizárólag akkor kérnek be valamit amikor már kell, megpróbálják előre kitalálni, hogy mi fog kelleni és azokat előre betöltik az L1/L2/L3 cachebe (pont ez a lényegük). Nem ritkán amíg 1 adatra vár egy cpu szál, addig tud találni más műveletet amit el tud végezni (pl. többi szállnak besegíteni, ha van értelme és nincs adat közeli cacheben).

    Mindenesetre érdekes lenne látni valami infót, hogy "átlagos esetben" (jelentsen ez bármit is), milyen intenzitással tudnak érkezni az adatok a cpu felé, azaz látni azt, hogy mennyit ár üresen egy cpuszáll.
    A cpu szállaknak mondjuk pont ez az értelmük, hogy amíg az egyik száll vár adatra, addig a másik tud tenni-venni az azonos egységen belül (zen 3nál (Vagy zen4nél? nem emlékszem pontosan) pl. már 4száll/mag lesz a felosztás, de x86on túlnézve most is vannak cpuk amik 8száll/mag felépítést alkalmaznak).
    Viszont mondjuk hiába van 1-2GB L3 a chippen, ha a keresett adat nincs benne de ha benne is van, akkor is gond, hogy hiába van közel a késleltetés akkor is jelentősen nagyobb lesz mint az L1/L2 esetén.

    Mondjuk jelenleg windowsoknál a többféle sebességű cpumag egy chippen belül rendszerrel is gond lenne.. Kernel szintű módosítások kellenek (lehet már dolgoznak rajta), hogy normálisan kezeljen egy ilyen aszimmetrikus cpu-t (bár sokáig még azt se tudták megoldani jól, hogy az aktív szálakat ne dobálja egyik magról a másikra és emiatt az egész L1/L2 tartalma átmásolásra kerüljön egyik magról a másikra.. bár mostanában nem néztem, pár éve volt ilyen "bugjuk").

    Tehát részben jó a sok memória, de ugyanakkor nem old meg mindent ha az adat előretöltés "megbecslése" nem fejlődik jelentősen (a mostani technikák sebességéhez van igazítva).

    Én a tokozáson belülre kerülő megoldásnál egyfajta gyors elérésű ramot tudok elképzelni, de a cache kivezetése nem látom, hogy életképes legyen, a kivezetéssel is az adat elérési időn tudnak faragni (kevesebb kapu, rövidebb vezetékek), de a tallózási sebességen csökkenteni nem feltétlen tudnak drasztikusan, így egy 20ns minimum lehet egy abból való adat lekérés.. bár pontosabb lenne órajellel meghatározni utóbbi értéket, de semmi infó.. a 20ns szerintem egy eléggé optimista becslés, ami még mindig lassú az L1/L2höz képest, de gyorsabb mint a DRAM, viszont méretben annál még mindig kevesebb lehet, így utóbbira is szükség lesz (komolyabb gépek esetén legalábbis).

    The human head cannot turn 360 degrees... || Ryzen 7 5700X; RX580 8G; 64GB; 2TB + 240GB + 2TB || Samsung Galaxy Z Flip 5

Új hozzászólás Aktív témák