Stránka 1 z 4
Dual CPU system
Napsal: 29 zář 2011, 19:49
od Gringo_Joe
Poridil jsem si spise ze zvedavosti zakladni desku MSI 694D Master s dvemi Socket 370 paticemi. Napral jsem do desky 2 procesory PIII 1GHz a dosadil 4x256MB pameti. Nainstaloval jsem WinXP a pri POSTu i ve spravci zarizeni jsou videt dva procesory. Zkusil jsem tedy otestovat tu "explozi vykonu".
Pouzil jsem
TestCPU a moc se mi to nezdalo. Tak jsem schvalne vyndal sekundarni procesor a nechal jet jen jeden. Vysledky jsou ale prakticky stejne at dam jeden nebo dva CPU do desky a daji se srovnavat i s jinym kompem PIII 1GHz, na kterem sice bezi W98, ale je to +/- srovnatelne.
Je to moje prvni ostra zkusenost s dual CPU. Cekal jsem vysledky od 0.6 do 1.6 nasobku jednoho CPU ale zrovna 1.0 teda ne:-)
Pokud vim, tak WinXP (SP2) by mely byt schopny vyuzit vyhody dvou procesoru. Delam neco spatne?
Napsal: 29 zář 2011, 20:26
od forbidden
A umí ten TestCPU multiprocesorový systémy? Ona aplikace napsaná na jednoprocesor nebude z víceprocesorovýho systému nijak těžit.
Napsal: 29 zář 2011, 20:35
od nobis
Ten TestCPU neznám. V programu, který ukazuje současně využití každého jádra samostatně, bys to poznat měl. Musí ovšem obě jádra detekovat. Pustit video z DVD a vidíš hned, jak se který jádro snaží. Potom jedno ubereš. Někdo snad napoví, který program použít. Já jsem na Linuxu.
Napsal: 29 zář 2011, 21:01
od rnbw
Ked testujes vykon jedneho procesora, tak tazko mozes ocakavat nejaku zmenu...
Napsal: 29 zář 2011, 21:48
od Gringo_Joe
Ja mel za to, ze praci obema procesorum rozdeluje OS.. Clovek se uci cely zivot..
Poradite nejaky CPU test, ktery by jednoduse porovnal sestavu single vs. dual?
Napsal: 29 zář 2011, 22:03
od rnbw
Ano, pracu im rozdeluje OS. Ale nemoze rozdelit jeden program na dva procesory. Skus spustit ten TestCPU dvakrat.
Napsal: 30 zář 2011, 07:08
od p32
Rozdělit jeden program na 2 procesory můžeš, ale musíš takový program mít. Řekl bych, že bys měl mít i OS pro využití dvou CPU. Mám dojem, že W98 to asi nebudou. To spíše XP nebo nějaké OS tehdy pro servery, ale nevím to jistě. 2 CPU na desce mi tenkrát připadaly divné a nikdy jsem to nestudoval blíže, protože to nikdo neměl.
Napsal: 30 zář 2011, 07:13
od elped77
Dobrý test je Hyper PI - je to ako vidno z názvu program na výpočet čísla pi. Môžeš nastaviť počet desatinných miest, prioritu výpočtu a počet jadier (až do 16).
http://www.softpedia.com/get/System/Sys ... r-PI.shtml
Napsal: 30 zář 2011, 10:21
od Gringo_Joe
p32 píše:Rozdělit jeden program na 2 procesory můžeš, ale musíš takový program mít. Řekl bych, že bys měl mít i OS pro využití dvou CPU. Mám dojem, že W98 to asi nebudou. To spíše XP nebo nějaké OS tehdy pro servery, ale nevím to jistě. 2 CPU na desce mi tenkrát připadaly divné a nikdy jsem to nestudoval blíže, protože to nikdo neměl.
Co jsem se vsude docetl, tak podpora vice procesoru byla jedine v Unixu anebo ve WinNT, a dale pak Win2K a WinXP.. Takze XP, ktere tam mam, by to mely zvladnout.
<utopie>Myslel jsem si, ze v kompu to funguje tak, ze prijde program a rekne OS - ja potrebuju tolik pameti, OS mu rekne, supni to na adresy XX az YY (pripadne to tam da sam). Urcite nejsou programy zvlast pro kompy s jednou RAMkou a zvlast pro kompy se dvema. No a s CPU bych rekl, ze to bude podobne. Program rekne OS, vypocti mi tohle a OS udela co umi, aby vypocet byl rychly. Programy prece neresi, jestli je to AMD nebo Intel, nVidia nebo ATi, na to jsou ovladace.. Program muze maximalne byt napsany tak, ze instrukce jdou ve sledu vyhodnem pro urcitou architekturu. </utopie>
Zkusim spocitat to Ludolfovo cislo.
Napsal: 30 zář 2011, 10:44
od rnbw
Tak to si myslel zle. Program (kod, vypocet) bezi priamo na procesore (nie "cez" OS), preto musi byt iny program pre x86, iny pre ARM, iny pre SPARC.
Kedze na jednom procesore (resp. jednom jadre) moze bezat len jeden kod, v OS byva planovac, ktory po nejakom case prerusi beh jedneho programu a umozni beh inemu (tym padom bezia akoby naraz - multitasking). Ked mas procesory dva, tak mozu bezat dva programy skutocne naraz.
Napsal: 30 zář 2011, 13:05
od forbidden
Zas taková utopie to není, ale v systému musí být ještě nějaký prostředí, ve kterým se takový programy spouští. třeba v javě, .NETu a další. Nejsem programátor, tak to tak neznám.
Napsal: 30 zář 2011, 13:19
od rnbw
To uz potom nie je kod pre CPU, ale datovy subor, ktory spracovava iny program (ktory bezi nativne na CPU). V pripade javy je to bytekod, ktory bezi vo virtualnom stroji (co je klasicky program).
Napsal: 30 zář 2011, 18:56
od Gringo_Joe
Tak jsem zkusil spocitat PI, ale pokud jsem dobre pochopil jen umi zatizit vice jader CPU a neumi je prinutit na vypoctu spolupracovat - nebo se pletu?
Zkusil jsem spocitat to na 128K mist, jednim jadrem to bylo za 11s a dvemi jadry 14s ale kazde zvlast.. Predpokladam, ze spolupraci by se byly schopne dostat treba pod 9s..
V grafu "Spravce uloh" je dobre videt jak dostavaji zabrat oba procesory (nebo jeden, podle toho jak nastavim), takze je jiste, ze oba pracuji..
Napsal: 30 zář 2011, 20:34
od p32
Nevím jak, ale nadedukoval jsem si, že to zkoušíš pod W98. Asi z té poznámky o w98.
Jinak to sdílení dvou CPU, tak to je trochu jinak.
"v systému musí být ještě nějaký prostředí, ve kterým se takový programy spouští. třeba v javě, .NETu a další"
NE. Tak toto vůbec ne. Je pouze OS, CPU a programy. Java atd. jsou stejné jak kdysi byla Foxplus apod. Bez toho se k datům nedostanete tak jednoduše. Nebo i jo, ale málokdo ví, jak.
OS pokud to už zvládá, tak prostě přes standardní systémová ukazovátka jako zjistí, o co se jedná. To jako je pouze to, že ho to ani nezajímá, protože systémová přerušení mají své praporky na daných adresách podle těch ukazovátek nastavená hned po startu atd. atd.. Pak se vůbec nic neděje až do chvíle dokud se o to nezajímá program, který toho umí využívat. No a ten si prostě jen přečte ten svůj potřebný praporek (návěští atd.) a podle toho prostě skočí v podprogramech na systémová přerušení (z OS), která umožní ta různá sdílení navzájem.
U CPU (P3 je středověk) se pak interní přerušení ještě dělí na spolupráci s interní pamětí (keší). Dříve měly jen svou, potom měly sdílenou a mezi tím nebo po té zase svou a navzájem si ji půjčovaly. To byla jejich vlastní inteligence bez vlivu jaký byl OS. Intel nebo AMD, to je fuk. Pro výslednou práci musí mít to hlavní stejné. To vedlejší zůstalo na oblbování uživatelů.
Jinak vlastní programy musejí být vždy zkompilované pro prostředí v jakém budou pracovat - druh OS (linux, wokna atd.), 16 nebo 32 nebo 64 bit, a další drobnosti, co normální uživatel nezná dokud mu něco nejde.
Ve zkratce: 2-192 CPU a jejich spolupráce je asi stejná jako spolupráce tří myší napojených na USB na jednom PC. To přirovnání je jen hrubé, ale princip stejný a u více CPU se to raději dělí už jen na jejich jádra.
Napsal: 01 říj 2011, 01:07
od elped77
Mne to skôr pripadá na zlé ovládače, tieto dosky boli dosť exotické na osobné PC pod XP.
Skús to ešte pretestovať bez "okien" s Hirens CD alebo UBCD, sú tam nejaké utility na test CPU.