Keresés

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

  • siposz

    aktív tag

    válasz #16939776 #2 üzenetére

    Naná, a programozók pont arról híresek, hogy imádnak random hardverváltozásokra optimalizálni.

  • Yutani

    nagyúr

    válasz #16939776 #2 üzenetére

    Pont azt taglalja a cikk, hogy olyan megoldás kell, ami nem igényli szoftverek módosítását.

    [ Szerkesztve ]

    #tarcsad

  • Petykemano

    veterán

    válasz #16939776 #10 üzenetére

    "Ne felejtsük el, hogy a koncepció a mobil vonalról jön, ahol pont a szakaszos terhelés a döntő, és amikor a kis magokat használja lehet akár másodpercekben mérhető a késleltetés, nem veszi észre senki."

    A heterogén magok használatának koncepciója lehet, hogy onnan származik, de szerintem lényeges különbséget jelent, hogy hol mi a cél a különböző típusú magokkal.
    A mobil esetén tényleg az a célja a kis magoknak, hogy legyen valami, ami a nem időkritikus folyamatokat a lehető legkisebb energiabefektetéssel elviszi.
    Az Intel kis magjainak viszont egyáltalán nem ez a célja.
    A kis magok célja a magas teljesítmény optimlális energia és tranzisztorbefektetés mellett
    Ellentétben ezzel a nagymagok nem kímélik az energiát és a tranzisztort és a legmagasabb Single Thread teljesítményre törnek.

    Nem teljesen értem a szkepticizmust
    "Másik probléma a skálázhatósága: Látszólag lehet hogy rugalmas, de mennyi socketet kell kifizetni pluszban, ha kiderül hogy kell még 128db nagy mag egy feladat okozta plusz terheléshez. Veszel még 4-8 socketet vagy kettőt?"

    Egyrészt ha neked kell még 128db nagy mag, akkor olyan szerverprocesszort fogsz venni, amiben van 128 nagy mag.
    Másrészt egy ilyen kérdés már ma is ugyanúgy felmerülhet. Ha ennyire késleltetéskritikus a programod, hogy minden szálnak mindenképpen a lehető legnagyobb teljesítménnyel kell futnia, akkor már fel kell tenned magadnak a kérdést: 2 socketben veszel 128db magot, vagy 8 socketben. Vannak olyan EPYC processzorok, amelyek alacsony magszámmal de 1Ghz-cel gyorsabban futnak, mint 64 magos társaik. És ha tutira mész, akkor letiltod az SMT-t is.
    Ha innen nézed, akkor a 64 magos szerverprocesszor a 16 magoshoz képest ugyanúgy alacsonyabb teljesítményű "kis" magokból áll.

    Én nem állítom, hogy minden workloadhoz jó lesz.
    Csak azt, hogy ha pl van ma egy 32 magos processzor, akkor annak többszálas teljesítményét elérheti egy olyan big.LITTLE processzor, ami 8 nagy magból és (mondjuk hasraütök) 48 kis magból áll. 64T vs 64T továbbra is.
    Eközben a 32 magos processzor 32 magnyi helyet használ a 8+48-as pedig ~20 nagy magnyi helyet, tehát költséghatékonyabb lehet az előállítása, miközben nem kellett lemondanod az egyszálas teljesítményről sem.

    Találgatunk, aztán majd úgyis kiderül..

  • Petykemano

    veterán

    válasz #16939776 #34 üzenetére

    "Egy olyan processzornál ahol 8 nagy mag "egyenlő értékű" 36db kicsi maggal TDP szinten, és van benne összesen 48 kicsi és 8 nagy, ott kb.:~62,5%-os TDP-ig működik teljesen zavartalanul a szálak-erőforrások közti váltogatás. Fölötte, ahol a 36 kicsi és a 8 nagynak harcolnia kell a számukra fenntartott TDP keretért, már nő annak az esélye, hogy késleltetés tüskék keletkezzenek. Addig ameddig egy hagyományos processzornál ez mondjuk 90%-os TDP fölött jön elő."

    Én nem vagyok a téma szakértője, nem foglalkozom szerverekkel, tehát ebben nincs tapasztalatom.
    Talán épp ezért nem értem, de szeretném megérteni.
    Hogy jött ki ez a 62.5%?

    A 8 nagy mag és a 36 (vagy akárhány) kis mag pont ugyanúgy ugyanazon a TDP kereten osztozik, mint homogén magok esetén. A homogén magok teljesítménye sem egyforma, nem ugyanolyan a turbó frekvenciájuk, sőt egyáltalán a turbó önmagában egy varianciát okozó tényező. Ugyanúgy elmondható, hogy 50-60%-os TDP keretig tud turbózni egy-egy magon, de ha ennél nagyobb kihasználtságnak teszed ki, akkor az alapfrekvenciához közel tud csak ketyegni a mag. De ugyanúgy harcolnak a magok a TDP keretért, hogy turbózhassanak.

    Én nem igazán látom a különbséget eközött, meg aközött, ahogy pl az 5950X össze van rakva. Az két külön CCX, még csak L3$ sem köti őket össze (thread hopping) Az egyik lapka kiváló minőségű, magasra tud turbózni, a másik lapka általában közepes, azért van, hogy ha az összes szálat használod, arra is rá tudja osztani. Nyilván a TDP keret miatt a második lapka aligha fog max frekvencián járni, hanem megmarad 3.5-4Ghz táján.

    Az igaz, hogy a két különböző minőségű zen lapkán levő magok maximális teljesítménye között lényegesen kisebb különbség van mint az ADL nagy és kis magjai között. De a programoknak már ma is meg kell találni, hogy melyik az jobb mag / jobb CCX.

    Találgatunk, aztán majd úgyis kiderül..

  • Petykemano

    veterán

    válasz #16939776 #40 üzenetére

    Próbálom megérteni a számolásodat.

    Ugye azt mondtad, hogy van egy heterogén cpu, amiben van 8 nagy mag és 48 kicsi
    És 8 nagy mag fogyasztása megegyezik 36 kis magével.
    Miért TDP/48 az egy magra eső TDP?
    Miért osztod el a 36-ot kettővel?
    Hogy jön a 12?

    "a normál processzornál a terhelés növekedésével csökkenő a magok órajele, itt meg elképzelhető olyan szervezés, hogy 4-5 kicsi magot ki kell kapcsolni ahhoz, hogy egy nagyot be lehessen kapcsolni"

    Nem értem, hogy miért kéne kikapcsolni? Ha a nagy mag átveszi a terhelést egy kismagról, ami terheletelnné válik, akkor azt persze akár ki is lehet kapcsolni.
    Ha az a 4-5 kicsi mag terhelve van, akkor ezt le tudja játszani úgy a processzor, hogy akkor egyik mag sem turbózik.
    Én nem látom itt sem a különbséget az 5950X-hez képest. Ott sem történik meg az, hogy "bocs, de a CCX1-en a Core1 turbózni szeretne, ezért sorry, de a CCX2-n két magot - ami egyébként dolgozott - most lekapcsolunk" Nyilván meg lehet tenni, ha nincs terhelés és nyilván meg is teszik, de amikor a CCX2 magjai is terhelés alatt állnak, akkor a CCX1 Core1 nem turbózik, és nem is ketyeghet olyan magas órajelen.

    Nem értem, sajnos, hogy miért látod úgy, hogy a TDP kerettel való gazdálkodás két különböző mag-csoport között megoldhatatlan kihívás, amikor ezt megoldja az 5950X is, de ott van az AMD Smartshift, ami fizikailag két különböző helyen levő CPU és GPU közötti közös TDP keret gazdálkodást oldja meg.

    Az tény, hogy az egész azon áll vagy bukik, hogy a Windows 11 ütemezője jól kezeli-e az egyes magok képességeit és a szálak igényeit. Az ezzel kapcsolatos félelmet értem, ha ez nem jól működik, az egész koncepció kuka.

    Azt a kritikát is értem, hogy amikor az AMD elszabadította a magszámot, akkor a szoftverlicensz-ek mind átváltottak socket-ról magszámra. Ebből a szempontból nyilván hátrányos a kis mag, mégha egyébként tranzisztor- és energiahatékonyság szempontjából előnyös is MT workloadra. Ha valami, akkor inkább ez szól az ellen, hogy a heterogén magokat bevessék szervek terén.

    Találgatunk, aztán majd úgyis kiderül..

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