Keresés

Hirdetés

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

  • Robitrix

    senior tag

    válasz <Lacy85> #35 üzenetére

    ennek az lehet az oka, hogy a 3960X-et nem otthoni gépekbe szánják. (amúgy gyengébb, mint a 3950X) Nyilván a FCLGA2066 csatlakozó egy jóval komolyabb alaplapot is hordoz szolgáltatásban és megbízhatóságban. (az nem egy mezei AM4-es.) HEDT ként az nem otthoni PC hanem inkább workstation szint. Egy munkaállomás ára meg simán elvisz plus 100-150 ezres proci ár különbözetet. Aki rászán munka miatt egy gépre 2 milliót az nem fogja követelni, hogy csak akkor veszi meg ha 1,85 millióba kerül. Olyan ez, mint az autóvásárlás. Valaki vesz egy ütös luxus BMW-t 35 millióért, annak szándékét nem befolyásolja, hogy 34 millió vagy 36 millió a kocsi ára. Aki megengedheti magának a 35 milliót az leszarja, hogy végül 36 millió lesz az ár. Kicsire nem adnak azon a szinten.
    Na pont ilyen a workstation is. Ezt a szintet inkább munkára veszik cégek vagy vállakozások. És kicsire ők se adnak. Nem olyan magán személyek, mint mi, hogy boldogok vagyunk már attól, ha 15 ezret megsporolunk a gépen és a seggünket verjük ettől is a földhöz. :)

  • Robitrix

    senior tag

    válasz hokuszpk #95 üzenetére

    A bal szélsőből nekem is van egy... milyen király volt 120 Mhz-re felhúzva... :)

  • Robitrix

    senior tag

    válasz #04824576 #130 üzenetére

    Ennek egyik oka az, hogy mást ért TDP alatt az intel és mást az AMD.
    Az AMD egy saját mérő programot használ. Ami igyekszik maximálisra kihajtani minden magot és szálat. és így hajtva mérik a fogyasztást.
    Az intel meg egy úgy nevezett tipikus fogyasztást ad meg. Ezt úgy mérik, hogy lefuttatnak bizonyos alkalmazásokból álló szoftver csomagot mérik közben a proci fogyasztását, majd hogy tovább torzitsák a képet az átlag kiszámításából simán kihagyják a legtöbbet fogyasztó alkalmazás értékét. (ennek okát a sunnyogáson kivül nem igazán látom)
    vagyis mikor a intel azt mondja egy procira, hogy 65 watt a TDP , akkor az lehet, hogy csontig kihajtva végül 85 watt lesz. Ha az AMD ad meg TDP-ként 65 wattot, az nos nagyjából maximum lesz 65 watt.

  • Robitrix

    senior tag

    válasz #04824576 #132 üzenetére

    ez egyértelmű... egy mag két szálán futni mindig lassabb mint mint két külön magon. Ha 1 mag 100% és két mag 200%, akkor 1 mag kétszálú úgy 150-160%.... ennek oka, hogy a HT vagy SMP esetében a magban közös a gyorsitó tár így a párhuzamosan futó program ágaknak osztozni kell egymással a a közös memória irásában vagy olvasásában. Valós időben egyszerre ugyanis nem működik. Így ha pont egyszerre akarnának nyúlni a memóriához akkor valamelyik program résznek ki kell hagyni a várakoz közben néhány gépi ciklust és megvárni, mig éppen hozzáférhet a gyorsitó tárhoz. ez végül 20-30% telejsítmény esést is okozhat.
    Ráadásul elég béna a win erőforrás ütemezője. mondjuk van egy 6 párhuzamos program ágat használó programom. ha 6/6.os a proci akkor ráteszi a program szálak időszeletének futását 6 magra. A gyakorlatban nem mert egy rendszerben simán fut a felhasználó program mellett még 80 más folyamat akár 1000 szállal is. Így időnként adott pillanatban más fog futni egy magon nem maga a program. Viszont ha van egy 6/12-es proci, akkor hogy spóroljon az erőforrással, akkor megteheti, hogy a program ágat ráereszi 3 mag 6 szálára. 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. Amikor mégis megprobálja egy program belenyulni egy másik program memoria területére akkor kapjuk azokat a jó kis általános védelmi hiba üzenetet. vagyis a rendszer lküldi a búsba a programot, mert máséhoz akart nyulni. :) Mondjuk a politikusokra is ráférne. Mikor máséhoz akar nyulni a kezükre csapna és közölné, hogy általános védel mi hiba nono... :)
    összességébn a ryzen 3 1200 összeljesitménye nagyobb m int a G5400 teljesitménye, viszont az utobbinak meg azért magasabb az órajele, ami meg gyorsabb egy szálas teljesitményt ad nekik. Viszont a szálakon többet veszit, mint amit az órajelen nyer, ezért gyengébb.

  • Robitrix

    senior tag

    válasz Male #171 üzenetére

    na ja nem is sikerül szinte soha a tökéletes skálázás, mert a feladtok döntő része olyan hogy lehetetlen arányosan szétosztani a futó folyamatokat a magok vagy szálak közt. Még leginkább azokat a programokat lehet arányosan szétterhelni, amelyek ugyan azt az algoritmusokat futtatják párhuzamosan csak más adatokra. renderelés,, tömörítés, titkosítás, videó szerkesztés stb.

  • Robitrix

    senior tag

    válasz poci76 #173 üzenetére

    annyi igaz, hogy a program nem közvetlenül a a gyorsító tárat címzi, hanem a RAM-ot. de közben a hardver probálja mindig a gyorsítótátrban kéznél tartani a futó program aktuális környezetét, hogy gyorsabban elérje, Ha nincsen meg az adat, mert mundjuk egy vezérlés átadással túl messze kerülünk a korábbi cimtől, akkor marad a gyorsítótó tár újra töltése az új cim környzetével. A környezet ez esetben annyi adatot jelent, amit a cache tárolni képes. nyilván egy 256 kbájtos gyorsitó esetében nem tudom betölteni aktuális cim a mb-nyi környezetét. Persze a programok legtöbb esetben szekvenciálisan hajtják végre az utasitásokat. egymás mögött utasitásról utasitásra lépegetve sorban. Aztán persze van vezérlés átadás, mikor jó messze kell elugrani a programban mondjuk 1 MB távolságra a korábbi cimtől. Az persze nem lesz bent fizikailag a gyorsítóban így jön a újratöltés a RAM-ból. minnél nagyobb a tár annál esélyesebb, hogy az adat megtalélhatü a gyorsító tárban. kevesebb újra töltés. ezért gyorsul a proci nagyobb cache esetében. (legalább is egy határig.)
    Na most ha elég nagy a cache mérte akko lehet, hogy a program párhuzamosan futó kéz szálának adati is megtalálhatóak egyszerre a gyorsítóban.
    Viszont mivel a leforditott program relativ eltolási cimmel rendelkezik
    Ha két program két kölön szála fut egy procin akkor az adatok keverednek egymással a gyorsítóban és nem tudni, hogy ha mind a két program éppen realtiv eltolás miatt nem tudni, hogy ha mind a két szál a saját magának a 17 ezredik bájtjának adatát akarná beolvasni, akkor kinek a az adata lesz bent??????? Az egyik program éppen Kovács Béla anyjának lánykori nevét akarná elolvasni, de a másik meg a PI 28 jegyre megadott lebegő pontos értékét akarná megkapni. Aztán majd mikor a kedves mama lánykori nevével akrná kiszámolni a kör területét gond lenne. :)
    Na ezen okból egy adott pillanatban nem futhat két program egy mag két szálán. Ah van egy programom 5 szállal és van egy programom 3 szálon akkor az HT vagy SMT esetében nem 5+3 szál lesz, ami elférne 4 magon hanem 3 mag(amiből egy szál éppen üres) +2 mag (ahol szintén üres egy szál) lesz vagyis 5 mag(és 10 szál kell hozzá
    persze mikor magon fut a két program és van 5+3 mag szabadon akkor nem zavarják egymást Minden magnak saját önálló gyorsítót terülte van ahol nem keverednak más programok adataival aktuálisa és mindenki a sajátjait látja.
    Persze mi emberi szemmel azt látjuk, hogy folyamatosan terhelödnek nagyjából a magok összevissza. Ennek az oka, hogy időosztásban dolgoznak a rendszerek. Vagyis kis időszeleteket adnak oda a programok folyamatinak futni. Mondjuk felosztja az 1 mp futási időt 50 darab 20 msec időtartományokra. aztán a rendszer ezeket is a kis időtartományban engedi futni az adott folyamatot vagy program szálat egy proci magon. Aztán lehet a következő 20 msecre másik folyaamt kapja meg akár egy teljesen más program. Persze minnél nagyobb a prioritása egy programnak annál többször kap lehetőségek futni. de hogy egyik pillanatban az 1. magon fut majd más kap lehetőséget, aztán a 3. pillanatban kap lehetőséget futni a 6-os magon kétszer majd 1 időszeletre a 3. mag következik....

  • Robitrix

    senior tag

    válasz poci76 #173 üzenetére

    természetesen a program nem látja a gyorsitótárat, de a hardver igyekszik oda tenni alá az aktuális futás helyének memoria környezetét. tehát ha a leforditott program aktuális utasitása a program elejétől számított 150 ezredik bájtnál van és a a programom mondjuk a memória 10 milliomodik bájtjától fut. Akkor a cachebe igyekszik betölteni a RAM 10 millió + 150 ezer cim környéki RAM tartalmat. Aztán olyan álnok leszek, hogy átugrom a programomban mondjuk egy a program elejétől számitott realtiv távolság 800 ezeredik bájtjára, hogy onnan fusson tovább mondjuk egy függvény. Persze mivel a gyorsítótár csaj 256 kbájtnyi így nem is található. meg a korábbi 150 ezer bájtnyi memoria környezet. na ilyenkor szopacs van és újra kell tölteni a gyorsítótárat a 800 ezerdig bájt környezetével. aztán végrehajtok ott 100 utasitást egymás után és véget ér a függvényem. és visszatér az eredeti meghivás helyére. na ismét szopacs mert megint a 150 ezer bájt környezetével kell feltötleni a gyorsitot, VAgyis a futó program valóban nem a cache-t cimzi közvetlenül de a hardver megprobálja mindig aktuális adatoka alárakni, hogy gyorsabban elérje. Szóval valóban nem a gyorsitótárat cimzi ennek ellenér mégis onnan kapja az aktuális adatokat(jól rosszul kiszolgálva)

  • Robitrix

    senior tag

    válasz Male #178 üzenetére

    na igen gyakran már logikailag nem fogalmazható úgy meg a program, hogy szét lehessen zavarni a feladatokat párhuzamosan.
    Némileg olyan a dolog, mint a ház épités.
    Nyilván amig betonozzák az alapokat nem lehet párhuzamosan rakni a cserepeket a tetőre, hiszen még fal sincs és tető sem.
    Amikor már áll a ház fala ás a tetőszerkezet, akkor lehet párhuzamosan rakni fel a cserepekt a szobában lerakni a szönyegpadlót, miközben villany kapcsolata szerelnek be a konyhában. egy átlagos program ban rengeteg dolog van, aminek futása függ egy másik folyamattól vagy annak eredményétől, hiszen azt használná fel. Ezért a legtöbb program nehezen párhuzamosítható vagy csak bizonyos részeinél lehetséges.

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