- Crypto Trade
- Facebook és Messenger
- Hálózati / IP kamera
- Direct One (műholdas és online TV)
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Álláskeresés, interjú, önéletrajz
- Olcsóbb lett a Tesla Full Self-Driving szoftvere
- Nagyon gyorsan betilthatja az EU a TikTok újítását
- Milyen routert?
- Aliexpress tapasztalatok
Aktív témák
-
fzoy
csendes tag
Őszinte elismerésem.Útálom az elfogult cikkeket,de most le a kalapot előttetek.Remélem még sok ilyen cikk következik.
Ahonnan én nézem,elég ocsmánynak tűnik a világ
-
Szalma
őstag
HI!
Nagyon jó! Szerintem korrekt.
Viszont: bármilyen programot végre lehet hajtani párhuzamosan (legyen az akármilyen ciklus), legfeljebb nem érdemes. A HT, úgy tűnik, jól válogat.
És egy programozástechnikai megjegyzés: egy bizonyos bonyolultság feletti felhasználói interfész korrekt kezelése sokkal egyszerűbb threadekben futtatott állapotgépekkel, mint lineáris programozással. (Nem kell 1000 flag, szét lehet dobni az állapotgépek implementálását több programozónak, UML interfész készítése is megoldható, stb.)
De a cikk, az nagyon jó!!!
És talán a HT-s procik árai is gyorsan csökkennek... 8)
Szeretettel:
Szalma -
Adi
senior tag
Egy Linux kernelfordítást lenyomhattál volna rajta még! :)
ldm start-reconf primary
-
bocs
csendes tag
Gratula, még emésztenem kell, mit is olvastam...
kérdéseim:
1. Oprendszert nem émlékszem hogy láttam volna leírva, azt talán érdemes jelölni.
2. Win2k-n és Linuxon is érdemes lenne 1 teszt, hátha mutat valami különbséget.
3. FOrrást nem kapunk?
Köszi-bocs a hardwerláma-
-
pk
csendes tag
Az érdekesség kedvéért nem ártana összehasonlítani a HT-t egy valódi 2 processzoros rendszerrel. Megtettem, és érdekes eredmények születtek, bár az eredményeimet a cikkben írt futási időkkel számszerűen összehasonlítani nem lehet, mert a gép, amin teszteltem egy dual PIII-800. Ami tanulságos, és összehasonlítható, az a futási idők aránya.
A teszt eredménye:
1 integer running time:13.684966 secs.
1 floating point running time:13.579376 secs.
2 integer running time:13.995302 secs,
2 floating point running time:13.743130 secs,
1 integer and 1 floating point running time:13.762499 secs,
4 integer running time:19.967405 secs,
4 floating point running time:20.414578 secs,
4 integer and 4 floating point running time:33.857547 sec,
Ami kiolvasható a számokból: itt a HT-vel ellentétben a két proci nem hat egymásra. (legfeljebb a pénztárcánkra ;-) ). Ez persze várható is volt.
Már látom a jövőt: dual processzoros rendszer, mindkét proci HT-vel :-)PK
-
peace&love
aktív tag
Akkor a gyakorlatra lefordítva az olyan alkalmazásoknál, mint pl. Photoshop, ami a programozás szintjén is támogatja a duál-processzoros működést, okoz-e valós teljesítmény növekedést, ill. ha okoz, akkor mekkorát? Pl. egy valódi fizikailag két processzorral működő géphez képest.
Tudom, lámer vagyok, de számomra ez nem világos.Ha rám hallgatsz, azt csinálsz amit akarsz!
-
nagyúr
válasz peace&love #9 üzenetére
Saccra 20% körüli teljesítménynövekedést okozhat.
while (!sleep) sheep++;
-
Szalma
őstag
Ööööö...
Ez pl. teljesen ekvivalens n darab cos(konstans) végrehajtásával és kiírásával. Persze lehet, hogy az output keveredni fog, de akkor is... 8)
Szóval MINDENT lehet párhuzamosan csinálni (különösen, ha nem a proci assembly-jében készül a program), de nem feltétlenül érdemes!!!
(A példádban a printf egy elég jól párhuzamosítható dolog: 1. thread felkészül a file kezelésre, mert az a leglassabb művelet egy oprendszerben (jelen esetben stdout), 2. thread addig formázza a float-ot. És ezt még akár C-ben is meg lehet valósítani. Ha lejjebb megyünk az absztrakciós szinteken, akkor még több párhuzamos feladat adódik. A procik pl. teljesen jól párhuzamosítanak: miközben instruction fetch megy, azonközben van branch jóslás, ALU művelet, stb. EGY időben, EGY órajel-élre. És erre minimális ráhatása van az embernek. Különösen egy ''magasszintű'' nyelvből...)
De csak kötözködöm...
Szeretettel:
Szalma -
peace&love
aktív tag
Hát az már megéri...
Csak, hogy fordítsuk le nekem magyarra: ez a HT működés segít abban, hogy a win háttérben futó 80 processze és esetleg több egyidejűleg futtatott alkalmazás OutlookExp., Int.Explorer, Photoshop, Illustrator, Acrobat, víruskereső, stb, esetén kevesebb homokórával találkozzunk? Vagy csak a külön erre írt programok teljesítményét növeli, és nem segít a fent említett dologban...?Ha rám hallgatsz, azt csinálsz amit akarsz!
-
rog
addikt
válasz peace&love #14 üzenetére
segit.
gyak az oprencer azt hiszi hogy ket proci van a gepben. sot mar a bios is. ezert valszeg a chipset is. na jo o esetleg sejti, hogy itt valami turpissag van. :)
szoval igen, ha az opr. kepes ra es jol ossza be az eroforrasokat (jelen esetben a procikat is), akkor elvileg simabban fut a mediaplayer, amig te a hatterben fajlokat tomoritgetsz .
vagy nem. de akkor ne nalam reklamaljon senki! :) -
marcee
addikt
-
nagyúr
Naszóval.
Az N darab konstans kiíratását nem fogod tudni megcsinálni, mert ahhoz előre tudnod kellene a műveletek végeredményét, és függvény lévén, ezt nem fogja neked megcsinálni a compiler, meg a futás közben sem létezik olyan optimalizáció, ami gyorsabban végrehajtja neked ezt a műveletet, mintha inkrementálnád i-t, pakolgatnád a stackbe a paramétereket, és hívogatnád a cos fv-t.Nyilván itt lehetne külön formázni a floatot és előkészíteni az stdoutot, de pl. egy printf esetén ennek nem sok értelme van, mert threadot kreálni jóval több idő, mint floatot formázni.
Másik dolog: NE keverjük össze az utasításszintű párhuzamosságot a szálakkal! Csővezeték már a 386-osban is volt, az utasításátlapolás teljesen más tészta, mint a többszálú működés. A többszálú működés lényege, hogy olyan utasításokat hajtasz végre párhuzamosan (akár virtuális, akár valós párhuzamosítással), amelyeknek semmi közük egymáshoz (alacsony szinten legalábbis), de itt a legkisebb értelmezett egység az utasítás, a legnagyobb pedig a taszk vagy a processz, az utasításszintű párhuzamosítás legnagyobb egysége az utasítás, a legkisebb pedig az utasítás feldolgozásának lépései.
Satöbbi, satöbbi, satöbbi, ha nem oké, akkor szólj hozzá. :)while (!sleep) sheep++;
-
peace&love
aktív tag
válasz peace&love #14 üzenetére
Ne kezdjétek, hogy a memóriától is függ, azt tudom. Tételezzük fel, hogy abból van elegendő...
Ha rám hallgatsz, azt csinálsz amit akarsz!
-
peace&love
aktív tag
válasz peace&love #18 üzenetére
Bocs, nem tudom miért vagyok állandóan lemaradva...
Ha rám hallgatsz, azt csinálsz amit akarsz!
-
Szalma
őstag
Hihi...
Nem akarok rosszat senkinek, mindöszesen azt állítottam, hogy Hoare és Dijkstra óta tudjuk, hogy minden Turing-gépre implementálható feladatnak van párhuzamos implementációjú megoldása IS. Nem feltétlenül a legjobb, de van.
Szóval még csak annyit szeretnék hozzátenni, hogy igen-igen nehéz feladat eldönteni egy nem általunk kontrollált párhuzamosításnál, hogy mely struktúra az, amelyet nem oszt szét a felsőbb hatalom. Valamint, ha felkészülünk a párhuzamosításra (ugye a tesztből is ez derült ki!!!!), akkor egy fejlettebben párhuzamosító achitektúrán jobban/gyorsabban működünk...
(SzemiC, paralell megoldás:
calc ( n ) {
for ( i = 0; i < n; i++ )
fork ( print_cos ( i ));
}
print_cos ( i ) {
printf ( ''%f'', cos ( i ));
}
For jú. 8)
Tippként: ha a koszinusz eredményeit összeadnád, akkor nehezebb feladatom lett volna... (De nem reménytelen...)
Szeretettel:
Szalma -
-
Szalma
őstag
Mondjuk, hogy a fork ( fv ) utasítás elindít egy független szálat az fv fügyvénnyel. Ekkor leszalad a ciklus és elindít n darab print_cos() függvényt 0-n-ig paraméterezve. Azok meg futnak, ahogy tudnak.
Ha komolyabban érdekel a párhuzamosítás problémája, akkor javaslom, hogy nézegess Modula-2 programokat és irodalmat. Ennek a nyelve elég egyszrű (Wirth prof. készítette, Pascal szerű), de nyelvi szintek képes párhuzamosításra. Rendkívül jól lehet vele szórakozni. DOS alá van egy nagyon jó fejlesztőkörnyezet, TopSpeed Modula-2. Lehet hogy megvan valahol a neten.
Ha esetleg harcore paralell programming érdekel, akkor google és CAR Hoare nevére keresve van egy-két érdekesség. Sajnos az elte OCCAM leírását már csak a google tárolójában találtam meg:
[L]http://216.239.39.100/search?q=cache:F3RnBP-Wp-4C:www.inf.elte.hu/targyak/progterv/p-ny4/Occam/occam.html+Hoare+paralell+csp&hl=hu&ie=UTF-8[/L]
Szeretettel:
Szalma
ui.: És ne feledd: egy jó C programozó BÁRMILYEN nyelven képes C programot írni... 8) -
cadaver
tag
udv! 3D Mark 2002 SE-t honnan lehet leszedni? :)) najo nem kotozkodoK, cikk ütött! :)
-
nagyúr
Mondjuk, hogy a fork ( fv ) utasítás elindít egy független szálat az fv fügyvénnyel. Ekkor leszalad a ciklus és elindít n darab print_cos() függvényt 0-n-ig paraméterezve. Azok meg futnak, ahogy tudnak.
Jójó, azt hiszem, másról beszéltünk, mert a jelen esetben semmit nem gyorsít és gyorsíthat amit írtál, ott tudna gyorsítani, ahol
fork(fv1)
fork(fv2)
lenne, és az fv1 és fv2 párhuzamosan hajtódna végre.
Ez azt hiszem világos, egy kicsit mást mondtál te és mást én. Tehát abban az esetben érdemes párhuzamos folyamatokat indítani, ahol nincs adat egymásrahatás, mivel nyilván csak sorosan lehet majd őket végrehajtani. A cikk is azt akarta mondani, hogy ahol lehet párhuzamosítani, ott érdemes lesz, legalábbis HTvel rendelkező processzoroknál. Viszont ehhez logikai blokkokra érdemes bontani a programot, mert túl kis részek párhuzamosításánál a taszkkezelés egyensúlyi állapota felborulhat.
OCCAMról elég annyi, amit tudok:).
Nem vagyok jó C programozó, sőt, programozó sem, sőt, informatikus sem.:Dwhile (!sleep) sheep++;
-
esteban
senior tag
akkor most a multitasking (skizofrenia :))
-----
Szerintem az AMD (IBM :) ) megoldasa lesz celravezetobb ... tobbet erove: pufff bele meg 1 procit a tokba azt hagy szojjon ... a gyartasi koltsegek nem olyan egetveroen kulonboznek, hogy ennyi szoszmoszt megerjen a HT ...
Meg ugy e itt jonnek megint az alkalmazasok > egy valos 2 procis rendszereket mar tudnak hasznalni , mar vannak ... de egy ilyen 1.5 os procihoz ujra kell gondolni, irni etc. .. mindent ...
persze csak szerintem ....
-----iBook + RedBull :)
-
Sikló
tag
A cikk kitűnő! :D
''Attól, hogy valaki paranoiás, még üldözhetik...''
-
petakpa1
őstag
JÓ CIKK
/csak a garfikonok tetejére oda kellett volna írni a számadatokat/"... Feltalálom a hidegfúziót oszt reszeltek az amcsiknak...":)))
-
nagyúr
Az érdeklődőknek küldhetek esetleg forráskódot.
while (!sleep) sheep++;
-
shtml
őstag
Pl. azért, mert kétprocesszoros rendszerrel azonos típusú műveleteket is párhuzamosíthatsz, HT-gel viszont nem (érdemes), hiszen a HT-ben ugyanazokért a végrehajtó egységekért versenyzik a két szál.
Ha pl. főleg lebegőpontos műveleteket futtatsz egy duál gépen mindkét szálon, akkor jelentős a gyorsulás. HT esetén viszont egyenesen lassulni fog. A tesztekből is látható, hogy a HT több esetben lassít.
Vagyis másféle optimalizálás kell HT-re és megint másféle egy kétprocesszoros gépre.A szakember olyan barbár, akinek tudatlansága nem terjed ki mindenre. (Stanislaw Lem: Az Úr hangja)
-
nagyúr
Nekem pont az derült ki a tesztből - ez volt az egyik dolog, amire nagyon kíváncsi voltam - hogy a HT nem lassít akkor, amikor több szál ugyanazt az erőforrást használja. Ez persze nagyon logikus, hiszen minden P4-ben benne van a HT, csak nincs aktiválva, tehát a csővezeték tele van a támogatáshoz szükséges elemekkel, és ahogy írtam is, nem tudhatjuk, hogy ezek mennyit lassítanak a procin, de a HT bekapcsolt állapota NEM lassít akkor, ha két processz egyszerre használ (szeretne használni) egy erőforrást.
Tehát megírod a programot párhuzamosra, és ha ugyanolyan műveleteket használ egyszerre, akkor dualon gyorsul, HT-n ugyanaz, ha pedig különbözőeket, akkor dualon gyorsul, HT-n dettó.
Tehát nem kell másfajta optimalizálás.
Legalábbis szerintem, cáfolj meg.
(de kalkuláld, hogy NEM lassít a HT bekapcsolt állapota a kikapcsolthoz képest, mondjuk nem megfelelően fordított programoknál az optimalizáció érdekes eredményeket hozhat...amikor nem megfelelő könyvtárakat használtam, HT nélkül szépen futott, HT-vel pedig felborultak a végrehajtási sorrendek...)while (!sleep) sheep++;
-
Szalma
őstag
Ha valaki számításigényes és jól párhuzamosítható feladatot végez, akkor a dual jobb. De ha kell szép grafika a felhasználó arca elé, meg valami lebegőpontos effektet is rakni kéne rá, akkor egy Beowulf-al nem sokra megy az ember...
Amin otthon fejlesztek: egy BP6 két 550-es celeronnal, és az a tapasztalatom, hogy ugyan játékokban esélytelen mostanában, de fejlesztésben és fotosopban 8) csak nemrég tudták lelépni az egyprocis gépek. (Hogy milyen érzés: a 2 celeronon nem tétovázik a vindóz, egyprocison néha megakadni látszik, ezt gondolom Te is tapasztaltad már. Szóval ha fordítok több cuccot egybe, attól még könnyen dolgozhatok a grafikán, mert bírja. Mindezt a másik gépemen (1400AMD) nem tudom megtenni. Ami érzésben közel van hozzá az a kollégám 1800+AMD-je, de ott is előjön néha a megakad érzés... Ha csak ezt a feelinet csökkenti a HT, már akkor megérte, annyit dob a használati értéken.)
Egy looser kérdés: ezeket a HT-s procikat hogyan láttatja az alaplap? 2 procinak? Kell az oprendszernek támogatnia a többprocesszoros rendszereket a HT használatához?
Szeretettel:
Szalma
ui.: A HT szerintem jó, inkább az a probléma, hogy a gyártók a fejlesztéseiket szépen lassan csöpögtetik a piacra. Nem tetszik ez az anyagias világ, ami körbevesz. Ha nincs pénzem, senki vagyok. Ahhoz hogy pénzem legyen valamilyen szinten át kell vernem embereket... Brrrr.... Inkább az őskor... -
nagyúr
''ezeket a HT-s procikat hogyan láttatja az alaplap? 2 procinak? Kell az oprendszernek támogatnia a többprocesszoros rendszereket a HT használatához?''
Igen, két procit lát az oprendszer, két CPU használat grafikonnal stb. Támogatni a kell a többprocis üzemmódot.while (!sleep) sheep++;
-
Don Kartacs
csendes tag
Valaki okosílyon már ki, hogy a hyper trading segít e azon a problémán,
hogy baromi lassú a másolás LAN-on!!! , ha közben játszódom vmivel vagy fímet nézekThe turn of the tide i will come back
-
udS
csendes tag
AMD XP 1800+-on jobb eredményeket kaptam (majdnem 10% - szemre), mint amit HT nélkül mértetek...
-
tocsa
senior tag
Egyszerűen király.
Csak így tovább.Acer Predator Helios 500 Ryzen, Samsung 960 Pro NVMe + GeChic 15.6" kulso monitor a mobil irodahoz
-
mzperx13
csendes tag
Szia
occam:
http://www.inf.elte.hu/targyak/progterv/p-ny4/Occam/occam.html
bye,
EmZe Per Iksz XIII.kapcs.ford.
-
realrob
csendes tag
Uj otlet! (Legalabbis nekem.) Probalta-e mar valaki java-bol a hatast? Ugy tudom a java virtalis gepben minden thread. Tehat egy java alkalmazas mit profitalhat a HT-bol? Szerintetek?
Aktív témák
- Xiaomi Redmi Note 5 Global
- Formula-1
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Telekom mobilszolgáltatások
- Crypto Trade
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Amlogic S905, S912 processzoros készülékek
- Napelem
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Győr és környéke adok-veszek-beszélgetek
- További aktív témák...
- Új bontatlan, dobozos, számlás, garanciális i9 13900K CPU akció!
- BESZÁMÍTÁS! ÚJ Intel Core i5 11400F / i9 11900KF / i9 11900K tálcás processzorok 27% áfás számlával
- Beszámítás! Intel Core i9-11900 Processzor - Garancia & Számla - Utolsó Darabok
- CPU T vennék-keresek.Készpénzes felvásárlás!
- Bontatlan 13900KF 3 év magyar kisker garanciával