29
  • JTBM
    #29
    Másik példa:

    Láthatóság. Ezt igen nehéz számolni, ezért általában úgy számolják, hogy ha valami x távolságon belül van, akkor látható.

    De van olyan játék, ami valódi láthatóságot számol, ami egy komplex "világ", ahol van direkt láthatóság, takart láthatóság, hallás, stb.

    De az ilyen játékokban általában limitálni szokták az egységek számát a számításigény miatt.

    Ez a számításigény is teljesen párhuzamosítható, mert a láthatóságot is egységekre kell külön-külön számolni a "világ" felépítése után.
  • JTBM
    #28
    Mondok egy alkalmazást:
    A stratégiai játékokban az AI tud egységenként, és csoportonként is futni, mindezt párhuzamosan.

    A "világ" fel van építve, az AI ebből kiszedi az adott egység/csoport részére fontos adatokat, feldolgozza.

    Mivel minden egység/csoportra másodpercenként 10-60-szor le kell futnia az AI-nak, ezért jó AI esetén számításigényes a dolog.

    Az egész könnyen párhuzamosítható és annyi magon fut, amennyi van a gépben.

    A jobb stratégiai játékokban már a játékos egységei is kaphatnak AI-t és a játékos csak azokkal az egységekkel játszik, amikkel szeretne.
  • Tetsuo
    #27
    "heggeszteni" szép magyarsággal. :DD
  • MacropusRufus
    #26
    "Miért ne használnák ki? Az hogy te nem ismersz ilyet, még nem jelenti hogy nincs is. "
    nem csak ő... Ha lefuttatod az SMPSeesaw nevű okosságot egyből láthatod, hogy az összes mag futtat mindent. Gy.k. úgy viselkedik mint egy egymagos. Hiába látja a win mindet, nem osztja meg köztük a feladatokat, de pl. ezzel a programmal én megtehetem... (megjegyzem: a linux sem komálja nagyon a több magot)az op. rendszer helyett. Felesleges a több mag amíg az op. annyira kezeli, hogy tudja van 2db. Továbbá, amíg több proci osztozik egy közös alaplapon (a rajta lévő hídakkal, meg cache-kel és a többi közösen használt cuccal) addíg nem az igazi ez a dolog, de ez már más kérdés.
    A lényeg: hiába több mag, ha nincs alkalmazás ami valóban paralel módon dolgozna. De ha logikusan belegondolsz olyan sok alkalmazást nem is lehet paralel futtatni, legyen az játék vagy esetleg tervező program.
  • BlackRose
    #25
    Már megint az AD HOMINEM CyrSys, akinek útba van BlackRose, hogy miért azt csak a jó ég tudja... :) de mindegy. Esetleg egy értelmes (de ellentétes) hozzászólás? Nincs? :)
  • CyrSyS
    #24
    Már megint az okoska BlackRose!
  • hiftu
    #23
    Sőt a jövő processzoraiban kétféle mag lesz: szilva és barack.
  • Epikurosz
    #22
    Igazad van, persze, hogy igazad van.
    De azért a bacit is tudnak fityiszt mutatni - mindenkinek :-) Magtól függetlenül.
  • BlackRose
    #21
    Mert 16 lesz már annyi amelynek lesz elég teljesítménye, hogy olyan dolgokat tegyen mindennapossá amilyenekről már több éve beszélnek de a gyakorlatban nem sikerült megvalósítani (átlagos hardveren). És mert 16 magra már tényleg értelmes dolog többszálas alkalmazásokat fejleszteni :) 2, 4, 8 magosoknál ez csak esetenként igaz. :) És persze ha lesz 16 magos akkor az átlagos entry level 8 magos lesz tehát már beszélhetünk tömeges multicore világról, ami ma még nem igaz, ma van ugyan 4 magos de a többségnek kétmagos CPU-ja van (bár akinek újabb gépe van) és soknak még csak 1 mag ül a gépében.
  • Sanyix
    #20
    azt miért pont a 16? ménem a 10 vagy 12,5 mag? Vagy 5342423 mag? :D
  • BlackRose
    #19
    Éppen úgy, mint ahogy a számítástechnika is fityiszt mutat az emberi agynak. :)

    A két dolog nem hasonlítható őssze (esetleg csak naív szemszögből), az emberi agy egy dologban alázya le a számítógépet, a számítógép más dologban alázza le az emberi agyat. A számítógép nem agy, semmi köze hozzá... az agy persze egy maghatározott szemszögből számítógép, de annyira különböző az elektronikus számítógépektől, hogy összehasonlítani őket nem lehet. Nem azért kell nekünk számítógép, hogy az agyunkat helyettesítse hanem azért, hogy növeljük hatékonyságunkat.

    A 6, 8, 1000 magos CPU minden képpen előnyt jelent a hatékonyság növelésében, a kérdés csak, hogy képesek e vagyunk ezt a lehetőségeket kihasználni, hogy a papíron levő hatékonyságot a valóságban is mérhető hatékonyságnövelésre váltsuk. Ha nincs játszótér, nem lehet fudbalozni, ha van játszótér akkor csak rajtunk múlik, hogy tudunk e fudbalozni és mennyire jól. A multicore a játszótér, ha nem tudunk játszani ne a játszóteret hibáztassuk... rajtunk múlik, hogy kihasználjuk e a lehetőségeket, senki máson. Nincs hülyébb dolog, szükségtelennek kikiáltani azt amit mi nem tudunk kihasználni amire nekünk nincs szükségünk mert nem tudunk mit kezdeni vele, ha valakinek megfelel a 386-os hát örülök neki, de az közel sem jelenti, hogy nem kell többmagos CPU mert úgy sem tudjuk kihasználni. Ha nem tudnánk kihasználni nem is csinálnák... nagyon sok alkalmazásterület van ahol nem elég. Lehet ma is 4 CPU-s alaplapot összedobni 4 magos CPU-val (16 mag) csak ezt sokkal kevesebben tudják megfizetni mint ahányan ki tudnák haszunálni (szükségük lenne rá), ha ezt a 16 magot egy CPU-ba teszik sokkal többen megtudják majd fizetni és ez olyan előrelépést fog eredményezni a piacon amiről ma álmodni sem lehet.

    Azért mert valaki "befagyasztotta" magát egy kényelmes helyen, nem jelenti, hogy a világ ott megáll. Ahogy Bill Gates szokta mondani, a számítástechnikában még csak a felületet kaparjuk... olyan dolgok vannak ma a szobánkban (vagy legalább is lehet ha kell) amit nem több mint 5 évvel ezelőtt csak a többmillió dolláros datacenterekben lehetett látni és ott is csak full-time support IT gárdával. Én azt mondom kár, hogy lesz 6 magos... 8 mag kellett volna legyen, a 6 mag annak a jele, hogy a fejlődés nem elég gyors. És várom a 16 magos CPU-t :) az fog igazán új nagykapukat nyitni (a 2, 4, 8 még csak kiskapu) és kiskapun csak kevesen szoktak átmenni. Szerintem a 16 mag lesz az ami valódi forradalmat hoz a számítástechnikában ("kritikus tömeg").
  • rumkola
    #18
    gondolom ingyen :DDDDDDDD
  • Epikurosz
    #17
    Egyébként, hatmagosok ide, nyolcmagosok oda, az emberi agy még mindif fityiszt mutat a számítástechnikának.
  • Epikurosz
    #16
    A másik megoldás az, hogy feltöltöd valahová 60 perc alatt, egy szerverre, és ott egy IBM szuperszámítógép elintézi neked 1 perc alatt, és utána letöltöd... 30 perc alatt. :-)
  • blackeagle
    #15
    "" jajajajj nem ké sok magos mé nem hasznájja ki ""
    vegyünk egy példát ,1 napig renderel egy komolyabb scene-t egy 4 magos , az 1440 perc ,de lehet kéne nekem az 1 perc alatt , na gyihá lehet még gyorsulni és nem biztos hogy van renderfarmom.
  • Ahoy
    #14
    "Az mese, hogy átlagembernek nem kell a gyorsaság."
    Nem is írtam ilyet, átlag programokról beszéltem mint böngésző, msn, winamp stb... ezeknél inkább arra koncentrálnak, hogy minél trágyább procikon is elfussanak. Gondolok itt a harmatgyenge lepkefing Atomra, ami jónagy visszalépés sebesség terén, mégis iszonyat elterjedt lett/lesz.

    Ennek ellenére, teljesen egyetértek abban, hogy manapság dögivel veszik a HD kamerákat, aztán jöhet a videóvágás. Főleg most jön divatba az AVCHD, memóriakaris rögzítés. Eddig elrakhattad a kazettát, ha nem tudtad megvágni, most viszont kénytelen vagy gépre rögzíteni. Még lejátszani sem képesek a régi procik (HD-s videókártya nélkül) ezt a fajta erőszakos tömörítést, vágni/renderelni meg szinte kötelező a 4magos gép, mert annyira brutál. Szóval megveszik a hd kamerákat, aztán rájönnek, hogy egy új gép is kell hozzá, mert másképp használhatatlan az egész.

    Szerintem nem is kérdés, hogy szükség van multicore fejlesztésekre, mert kell a kakaó (vagy jöhetne már a 100 ghz-es grafén proci :) Inkább az, hogy a párhuzamosításra szükség van-e most égetően vagy sem. Mert film/konvertálás/renderelés/vágás-nál már meg van oldva a több mag használata (mert ott egyszerű),viszont "általános" a fentebb felsorolt programoknak meg bőven elég 1 mag teljesítménye is. Szerintem játékoknál van értelme a dolognak, de ott meg ugye a VGA iparra helyeződik a hangsúly, kevésbé a procikra. Gondolom nem olyan egyszerű a többszálú programozás, teljesen más látásmódot igényel, összehangoltabb munkát stb. Meg mi lesz jövőre, vagy azután? 12 24 magos procik? Azokon hogy fog futni a most 4-6 magra optimalizált program? Kitudja...

    Szóval erre próbáltam kilyukadni...amellett, hogy valami teljesen újat kéne megtanulni, kifejleszteni, nem is erőltetik annyira - ez pedig tény. Csak kár látni, hogy megvan a 4 magom, és rohadtul nem használja ki semmi csak ha ráeresztem a rendert, vagy ha egyszerre többmindent csinálok (ám ennek is vannak határai)
  • BlackRose
    #13
    Multimédia processing-ra most már a GPU-t kell használni (CUDA, DirectX Compute, OpenCL) napról napra több és több szoftver támogatja, a CPU-t általában ilyen dolgokban lealázza. És elárulom a számítástechnika alaptörvényét: "Memóriából és sebességből sosincs elég!" :)
  • Epikurosz
    #12
    Az mese, hogy átlagembernek nem kell a gyorsaság.
    Egyre többen vesznek videokamerát, és kezdik otthon fúrni-faragni a videofelvételeket. Oda már kell a gyorsabb PC, mert most kb. egy órás akármilyen film konvertálása egy másik formátumba 15-20 percbe telik, 2 magos processzorral, 2 GB RAM-mal.
  • Ahoy
    #11
    Azért vannak területek, amire abszolút jó... Filmrenderelés, 3d render, konvertálások. Nekem főleg ilyen munkára kellene, ehhez már csak plusz ha optimalizálják rá a többi ááltalános programot. De aki ilyen területen dolgozik az csak kis része szerintem az embereknek.

    Kérdés, hogy az átlag programokat van-e értelme egyáltalán tovább gyorsítani? Szerintem ez is közrejátszhat a többszálú programozás lassú terjedésében. Persze lenne hová gyorsulni, ez tény, de akkora létkérdése nincs a dolognak. A mai rendszerek már kellően gyorsak. Talán játékipar használná ki a többmagos procikat úgy igazán. Bár már ott is a grafika ami nehézfegyvereket igényel.
  • BlackRose
    #10
    Akkor az Intel Parallel Studio és a Microsoft Parallel Extensions olyan szórakozás?

    Az OS csak egy dolog a láncban. A Vista már segít, a Windows7 még jobban, de ha a programozó nem veszi figyelembe a dolgokat akkor csak minimális lesz az amit az OS elérhet, és ez így van most is és így lesz legalább addig még a fordítók nem lesznek annyira inteligensek, hogy a programozót felszabadítsák és maguk végezzék el az optimizációt a többszálú futtatásra.

    Különben a multicore architektúra ez nélkül is pozitív multitasking esetében, ugyanis több program egy időben futtatása esetében az OS már maga +/- elrendezí úgy, hogy optimálisan kihasználjuk a magokat. És virtualizáció esetében szintén pozítiv (általában szervereknél alkalmazható), ami akár desktopon is pl. a Windows7 XP mode esetében nem elhanyagolható, de fejlesztésnél is szoktunk virtualizált környezetben dolgozni. Szóval a multicore ideje jön és nemsokára az akinek nem lesz annak nagyon fájni fog ha tartani akarja a lépést vagy lamarad...
  • Theodora
    #9
    Továbbá: Még ha esetleg egy-egy feladat tovább is bontható lenne több szálra, "akkor sem éri meg feltétlenül", mivel az ilyen rendszerek tesztelése, hibakeresése nagyságrendekkel bonyolúltabb. Ezért "csak" azok a programok lesznek a jövőben is képessek kihasználni a több mag adta lehetőségeket, ahol megéri a plusz erőforrás a fejlesztésre és a tesztelésre.
  • roliika
    #8
    Vista óta kihasználja.
  • Inquisitor
    #7
    "Az operációs rendszer feladata már a több mag optimális kihasználása és nem a programozóé"

    Hát igen persze. És akkor mi van azzal, hogy van több olyan tesztprogi is, ami akkor is csak 1 magon fut, ha az ég leszakad? vagy azzal, hogy az XP párhuzamos szálkezelése egy halom kaki? Azzal ha csak az OS kernele használja ki a plusz magokat, csak minimálisan vagyunk előrébb.
  • vasziszdasz
    #6
    Miért ne használnák ki? Az hogy te nem ismersz ilyet, még nem jelenti hogy nincs is.
  • saba30
    #5
    Nem olyan egyszerű ám 1000 lábú IC-ket bedrótozni az alaplapba, meg lehet oldani (meg is oldják szerver fronton) de nem 2*-es alaplapárral kicsit többért,+ az alaplapok fogyasztása fog elszállni. Ezért nem terjed el annyira a BTX sem, mert a RAM-ot kicsit odébb kellett pakolni, mert prioritást kapott a hőelvezetés, de az meg visszaütött a teljesítményre. Itt a megoldás a sokkal intelligensebb energiagazdálkodás (lekapcsolódó magok, változó freki, és fesz ...).
  • roliika
    #4
    Az operációs rendszer feladata már a több mag optimális kihasználása és nem a programozóé. A programozó maximum szálakat indíthat, de a core architektúra leprogramozása nem a feladata.
  • Epikurosz
    #3
    Töketlenkednek. A procik terén is rég be kellett volna vezetni a modularitást, mint a RAM-oknál. Annyi procit tesz bele a gépébe a felhasználó, amennyire pénze van, és a technikai korlátok megengedik. A szoftver (az oprendszer!) meg érzékelje automatikusan, hogy mennyi proci van, és aszerint gazdálkodjon. Felesleges ennyit idétlenkedni.
  • T0nk
    #2
    "Es nem ugy nezki,hogy programfejlesztok hajlandok lennenek idot,energiat aldozni a programjaik tobbmagra optimalizalasara"

    Egy valamit tisztázzunk le. Ez nem úgy működik, hogy mindennel tökéletesen tisztában vagyunk az idők kezdetétől, és eldöntjük, hogy nem fejlesztünk többmagosan, mert az 3 forinttal többe kerül. Egyszerűen a fejlesztőknek HALVÁNY LILA FINGJA SINCS róla hogy kell néhány problémát párhuzamosan lefejleszteni. Ez több éves tudományos kutatómunka és mérnöki fejlesztés eredménye lesz, és majd ha lesznek olyan fejlesztőeszközök, és olyan fejlesztők amik csípőből megoldják, akkor lesznek hajlandók időt pazarolni rá. Addig nem pazarol senki időt egy olyan fejlesztésre, amiből nem lehet tudni, hogy mikor lesz valami. Nem fizetnek 10 embernek, hogy egy éven keresztül élvezkedjenek a szellemi probléma megoldásán, amikor van más feladat is, például taknyot heggeszteni egy szálon.
  • duke
    #1
    "miközben a fogyasztás esetében továbbra is a 130 watt jelenti majd a plafont."

    Ez a 130 watt nagyon sokk,folleg mert a programok nem hasznaljak ki a tobb magos proceszorokat.Es nem ugy nezki,hogy programfejlesztok hajlandok lennenek idot,energiat aldozni a programjaik tobbmagra optimalizalasara.