Keresés

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

  • poci76

    aktív tag

    válasz Robitrix #182 üzenetére

    Láthatóan nem vagy tisztában a processzorok (és operációs rendszerek) működésével. Ez nem baj. Ha érdekel a téma, pl. Tanenbaumtól a Számítógép-architectúrák c. könyv jó lehet kiindulásnak.
    Sajnos nincs időm mindent leírni, csak pár megjegyzés.
    A külön mag és az SMT pontosan ugyanúgy látszik a szoftverek felé (beleértve az operációs rendszert is), nem kell, hogy egy fizikai mag minden virtuális magján ugyanaz a processz fusson.
    A processzor pontosan tudja, hogy mely fizikai címet képezte le a cache mely szeletére, így nem gond neki, ha több processz ugyanazt a logikai címet használja.
    Az írásodból az érződik, hogy úgy képzeled, ha 256 kB a cache, akkor egy ekkora mennyiségű részt olvas be egyszerre a memóriából. Nagyon nem ez a nagyságrend: egy tipikus cache blokk pl. 64 bájtos. Ha elugrik 1MB-tal majd vissza, akkor szépen megtalálja a korábbi adatot.
    Egy memóriacímről adatblokkot nem csak egy helyre lehet elhelyezni a cache-ben, így ha két adat is ugyanoda kerülne a cache-ben, akkor sincs feltétlenül gond.
    A házépítés egyébként elég jól párhuzamosítható feladat. Ha kimész egy építkezésre, láthatod. Persze be kell fejezni az 1. emeletet, mielőtt a 2.-at elkezdik, de jó szervezéssel viszonylag jól optimalizálható, kevés lesz a várakozás. Egy párhuzamosított programnál is megvannak erre az eszközök. Nem triviális a dolog, tapasztalat kell, ezért is olyan lassan állnak át a szoftverek a nagyobb magszám támogatására.

  • poci76

    aktív tag

    válasz Robitrix #168 üzenetére

    "a felhasználó program mellett még 80 más folyamat akár 1000 szállal is"

    Az az 1000 szál szinte mindig idle-ben van, nem sok vizet zavar, nem okoz érezhető teljesítményvesztést.

    "azonos program két program ága futhat egy mag 2 szálán, de két külön program 1-1 szála nem futhat közös magon, mivel a közös gyorsitárban össze keverednének az adatok"

    Tévedés. A programok számára (az oprendszert is beleértve) a cache tartalma teljesen láthatatlan, transzparens, nem tudják a cache-t címezni, így bele sem tud nyúlni más program cache területére. Van pár olyan processzorutasítás, amelyekkel vezérelhető a cache, de a tartalma azokkal sem olvasható ki.

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