Gå til innhold

Fysikkprosessering med SLI


Anbefalte innlegg

- En GPU er mye MYE mer effektiv til å renge fysikk enn en CPU. I stedet for å bruke dyrebar CPUtid for å regne fysikk kan en GPU gjøre tilsvarende oppgave på mye kortere tid. Det er selvfølgleig ingenting som stopper deg fra å bruke kjerne #2 i en X2 til å regne fysikk (og dette vil nok sikkert også gjøres til en viss grad), men en GPU vil væremye mer kostnadseffektiv til oppgaven slik at kjerne #2 kan helelr brukes til andre mer generelle oppgraver som kan paralelliseres også.

 

-Stigma

5793441[/snapback]

For enkelte fysikkproblemer er nok dette riktig, men det er noen skår i gleden her. Husk at de raskest klokkede GPU'ene i dag har rundt 700MHz, mens en CPU har 3GHz, hvilket betyr at for et enkelt parallelliserbart problem (les lineær skalering) parallellisere problemet i fem deler for å oppnå tilsvarende maksimal ytelse som en CPU, i tillegg har CPU'er SSE2 hvilket betyr at du må utføre ti dobbelpresisjon flyttallsoperasjoner hver klokkesyklus på en GPU for å kunne oppnå maks. kapasitet for en CPU, for ikke å nevne 20 for en DC eller 40 for en QC. Hvis vi i tillegg tar med mulige fremtidige utvidelser av SSE til ytterligere ILP på x86 CPU, eksploderer dette. Hvis du nå tar med at mange fysikk problemer (for ikke å si de fleste) ikke er "embarrasingly parallel" må du også legge inn en skalerings faktor som har en tendens til å bli værre og værre dess mer du parallelliserer problemet. Hvis du har hengt med så langt, ser du at dette er langt fra så rett frem som teoretiske gflops kan lede mange til å tro.

 

Derimot er det en del fysikkproblemer som er begrenset av minnebåndbredde, og for disse tror jeg GPU kan ha mye for seg med bortimot ti ganger den minnebåndbredden en CPU har. Det er mange forskningsmiljøer som gjennom lang tid har jobbet med utnyttelse av GPU til rå regnekraft. Så langt har jeg kun sett en kommersiell realisering av dette, husker dessverre ikke navnet på selskapet/softwaren, men såvidt jeg husker dreide det seg om reservoarsimulering. Det blir spennende å følge med om det blir noe definitivt gjennombrudd for denne teknologien, men det blir nok i såfall, som så mye annet, egnet for enkelte problemer, og ikke noe Allah fra oven. Typisk regner jeg med at eventuell suksess vil skje på problemer som er lett parallelliserbare og problemer som er sultne på båndbredde. For problemer med begge disse ingrediensene bør GPU egne seg meget godt.

Endret av Del
Lenke til kommentar
Videoannonse
Annonse

Du kan ikke sammenlikne MHz. Er det noe historien burde ha lært deg, så er det nettopp det. Hvis det hadde vært så enkelt, hvorfor blir ikke grafikkort laget med Intel-cpu'er som GPU? Poenget er at GPU-er er spesiallagd for vektorregning og matriseoperasjoner og klarer slike oppgaver på langt færre klokkesykluser enn en standard CPU. Derfor er de, MHz eller ikke, mye raskere på sine oppgaver enn en CPU ville vært. Det er en grunn til at du ikke har lyst til å velge Software rendering, for å si det sånn... ;)

Lenke til kommentar
Du kan ikke sammenlikne MHz. Er det noe historien burde ha lært deg, så er det nettopp det. Hvis det hadde vært så enkelt, hvorfor blir ikke grafikkort laget med Intel-cpu'er som GPU? Poenget er at GPU-er er spesiallagd for vektorregning og matriseoperasjoner og klarer slike oppgaver på langt færre klokkesykluser enn en standard CPU. Derfor er de, MHz eller ikke, mye raskere på sine oppgaver enn en CPU ville vært. Det er en grunn til at du ikke har lyst til å velge Software rendering, for å si det sånn... ;)

5797484[/snapback]

Anbefaler deg å lese det jeg skrev på nytt, så vil du kanskje forstå hvorfor MHz ikke kan sammenlignes direkte i dette tilfellet, uten å gulpe opp et ubegrunnet "du kan ikke sammenlignet MHz". I tillegg burde du da også være i stand til å forstå hvorfor GPU egner seg bedre for grafikk enn CPU, selv om den ikke nødvendigvis er mye bedre egnet for all verdens fysikkproblemer. Hvis du hadde historiekunnskapene i orden ville du husket at det er noe som heter Risc prosessorer, for ikke å snakke om vliw, hvorfor tror du dagens x86 er konkurransedyktig med dette på f.eks. fysikkproblemer? Kanskje du også kan forklare meg hvorfor vi ikke ser noen klynger på top500 lista basert på GPU'er, mange av disse klyngene brukes tross alt kun til vektor og matrise operasjoner, strengt tatt er faktisk alle regneoperasjoner i en datamaskin vektor operasjoner, så stort mer upresis går det ikke an å være.

Lenke til kommentar
Anbefaler deg å lese det jeg skrev på nytt, så vil du kanskje forstå hvorfor MHz ikke kan sammenlignes direkte i dette tilfellet, uten å gulpe opp et ubegrunnet "du kan ikke sammenlignet MHz". I tillegg burde du da også være i stand til å forstå hvorfor GPU egner seg bedre for grafikk enn CPU...

5797894[/snapback]

Var det ikke det jeg sa, da? :dontgetit: Hva mener du er grunnen til at GPU'er ikke kan utføre fysikkberegninger?

 

Du har sikkert bedre greie på dette her en meg, men jeg bare reagerer på måten du generaliserer hva som skjer i én klokkesyklus. Det er da ikke likt for en GPU og en CPU? Og hvorfor så sint...?

 

Veritas_: Geekfight? Neppe, jeg ville nok tape glatt. :D

Lenke til kommentar

Jaja, jeg håper i allefall det ikke blir sånn at noen spill kun støtter Nvidias fysikkalternativ, mens andre bare støtter Ageias PhysX. Da blir man jo nødt til å kjøpe både 2 råskinn av noen skjermkort for å kjøre "fysikk-SLI" + 1 stk PhysX-kort hvis man vil helgardere med tanke på å få fysikken til å yte optimalt i flest mulig spill.

 

Jeg betaler gjerne litt ekstra for en bedre spillopplevelse, men det får da være måte på. :p

Lenke til kommentar
Hva mener du er grunnen til at GPU'er ikke kan utføre fysikkberegninger?

Det har jeg da aldri sagt, tvert imot prøvde jeg å illustrere karakteristikker ved fysikkproblemer som GPU kan egne seg meget godt for, og samtidig prøvde jeg å forklare hvorfor en ikke kan regne med at alle fysikkproblemer løses lettere på en GPU.

 

Du har sikkert bedre greie på dette her en meg, men jeg bare reagerer på måten du generaliserer hva som skjer i én klokkesyklus. Det er da ikke likt for en GPU og en CPU? Og hvorfor så sint...?

Beklager at jeg var litt krass, men du antydet at jeg var uten historiekunnskap. Evne til å generalisere har lagt basis for all fysikk og matematikk. Men i dette tilfellet generaliserte jeg ikke, jeg var meget spesifikk, det er i hver klokkesyklus at GPU og CPU kan utføre beregninger, hvis du leser det jeg skrev enda en gang burde det være klart: 3000MHz/700MHz blir drøyt fire, jeg konkluderte da med at GPU må utføre bortimot fem ganger flere operasjoner hver klokkesyklus for å gjøre like mye, hva er så generelt med det? Av og til er ting faktisk ganske enkelt.

Endret av Del
Lenke til kommentar
Derimot er det en del fysikkproblemer som er begrenset av minnebåndbredde, og for disse tror jeg GPU kan ha mye for seg med bortimot ti ganger den minnebåndbredden en CPU har. Det er mange forskningsmiljøer som gjennom lang tid har jobbet med utnyttelse av GPU til rå regnekraft. Så langt har jeg kun sett en kommersiell realisering av dette, husker dessverre ikke navnet på selskapet/softwaren, men såvidt jeg husker dreide det seg om reservoarsimulering. Det blir spennende å følge med om det blir noe definitivt gjennombrudd for denne teknologien, men det blir nok i såfall, som så mye annet, egnet for enkelte problemer, og ikke noe Allah fra oven. Typisk regner jeg med at eventuell suksess vil skje på problemer som er lett parallelliserbare og problemer som er sultne på båndbredde. For problemer med begge disse ingrediensene bør GPU egne seg meget godt.

5795419[/snapback]

 

Ja, jeg regner med at en GPU kan være godt egent til å regne akustikk også, iogmed at mange av de oppgavene en GPU gjør på lysbølger kan man ha god nytte av å gjøre på lydbølger.

 

AtW

Lenke til kommentar
Ja, jeg regner med at en GPU kan være godt egent til å regne akustikk også, iogmed at mange av de oppgavene en GPU gjør på lysbølger kan man ha god nytte av å gjøre på lydbølger.

 

AtW

5799709[/snapback]

Kan godt hende. I bølger inngår det jo gjerne noen bibliotek funksjoner (f.eks. sinus), generelt vil jeg si at disse er lite sultne på båndbredde (du gir ett tall inn som beregnes på flere ganger før det kommer ut), men litt avhengig av hva du skal gjøre med akustikken kan det jo være meget godt egnet for parallellprossesering.

Lenke til kommentar

Del, det virker som om du har god greie på dette feltet, men det lange innlegget ditt var det nok dessverre svært få som skjønte bæret av. Hadde forsåvidt vært interesant med en mer "inn-med-teskje" forklaring for min del, hvor forklaringer/definisjoner av begreper var med. Blir faktisk vanskelig å henge med i svingene her, og det er ikke gøy - siden dette er interessant :)

Lenke til kommentar
Men opplys meg på ett område folkens. Det stemmer at PhysX bare vil hjelpe i spille som har den fysikkmotoren og nVidia/havok sin bare vil hjelpe i havokbaserte spill?

5798936[/snapback]

Det her er et meget viktig spørsmål spør du meg. Havner vi i en teknologikrig tilsvarende formatkrigen HD-DVD/BlueRay, eller fungerer PhysX og Havoc i de samme spilltitlene? Det blir for dumt om vi må kjøre begge, da må vi alle ha både SLI/Crossfire og PhysX.

Lenke til kommentar
Men opplys meg på ett område folkens. Det stemmer at PhysX bare vil hjelpe i spille som har den fysikkmotoren og nVidia/havok sin bare vil hjelpe i havokbaserte spill?

5798936[/snapback]

Det her er et meget viktig spørsmål spør du meg. Havner vi i en teknologikrig tilsvarende formatkrigen HD-DVD/BlueRay, eller fungerer PhysX og Havoc i de samme spilltitlene? Det blir for dumt om vi må kjøre begge, da må vi alle ha både SLI/Crossfire og PhysX.

5800465[/snapback]

Det vil forundre meg mye om PhysX og Havoc vil ha samme interface, høyst sannsynlig må spillutviklerne optimalisere for dem hver for seg.

Lenke til kommentar

Hehe, tror jeg har seriøst feiltolket det innlegget ditt, Del. :!: Jeg ser fremdeles ikke helt sammenhengen mellom det du sa først og det du har sagt etterhvert. Det kan godt være det ligger over mitt nivå. :blush:

 

Jeg tolket det første innlegget ditt (det jeg kommenterte altså) med at første del sa at GPU'er ikke ville klare det den måtte per syklus, og andre del med at den likevel kunne være bedre på noen spesifikke ting, på grunn av båndbredde.

 

Det har jeg da aldri sagt, tvert imot prøvde jeg å illustrere karakteristikker ved fysikkproblemer som GPU kan egne seg meget godt for, og samtidig prøvde jeg å forklare hvorfor en ikke kan regne med at alle fysikkproblemer løses lettere på en GPU.

5799618[/snapback]

Da feiltolket jeg helt det du skrev her:

I tillegg burde du da også være i stand til å forstå hvorfor GPU egner seg bedre for grafikk enn CPU, selv om den ikke nødvendigvis er mye bedre egnet for all verdens fysikkproblemer.

5797894[/snapback]

Jeg må nok slutte å ta ting så bokstavlig. Regnet med at dette betydde at GPU ikke er like egnet for fysikkproblemer som CPU.

 

Beklager at jeg var litt krass, men du antydet at jeg var uten historiekunnskap.

5799618[/snapback]

Hehe, det var på ingen måte ment som en fornærmelse. Det er bare at man aldri vet hva slags kunnskaper forumbrukere egentlig har, og når jeg engang tolket det du skrev feil, så... :blush:

 

... hvis du leser det jeg skrev enda en gang burde det være klart: 3000MHz/700MHz blir drøyt fire, jeg konkluderte da med at GPU må utføre bortimot fem ganger flere operasjoner hver klokkesyklus for å gjøre like mye, hva er så generelt med det? Av og til er ting faktisk ganske enkelt.

5799618[/snapback]

Det var her jeg trodde at du mente at en GPU ikke ville ha sjangs til å klare dette, og det ble helt feil i mitt hode.

 

Jaja, sånn kan det gå. :!: No hard feelings?

Lenke til kommentar

GoMp, du ber om mye her. En vektor er i ugansgpunktet et element i et rom med en lineær struktur (dvs. skalarmultiplikasjon og addisjon), hvilket antagelig sier deg ingenting. Tenk på en vektor som koordinater, hvis du skal angi et punkt på et kart, må du angi to tall, lengde- og breddegrad, i tre dimensjoner må du angi tre koordinater, fire hvis du skal ha med tid, da har du eksempler på vektorer i to, tre og fire dimensjoner, m.a.o. en vektor er typisk flere tall i rekkefølge. En matrise er bare en tabell med tall, med regler for hvordan du adderer, multipliserer osv. Programmering som dreier seg om beregning av vektorer og matriser kalles lineær programmering, det finnes hyllemetre med lærebøker som har "linear programming" i tittelen. Fysikk kan man kanskje si er all matematikk som brukes til å beskrive naturen, i så måte kan du sikkert masse fysikk. GPU brukes i hovedsak til å tegne skjermbilde, det er en meget parallelliserbar operasjon, og har dannet grunnlaget for designet til GPU. På flere sentrale områder er grafikk-kortet overlegent CPU (mest nevneverdig er minnebåndbredde og kapasitet til å gjøre mange regnestykker i hver klokkesyklus, med SSE kan CPU gjøre to addisjoner hver klokkesyklus, og dette er maks. for CPU, en GPU kan gjøre mange fler). Hvis du er usikker på definisjoner/begreper anbefaler jeg deg wikipedia.

 

tjohei, jeg har teflonhjerne, ingen vonde følelser her.

Lenke til kommentar
Helt enig - kortet fra Ageia virker rett og slett som en langt bedre løsning.

5803961[/snapback]

Jeg synes det stikk motsatte. Men det er nå meg da.

 

Blandt annet ATI sa noe sånt som dette: "Try askin Ageia if their PPU can help graphics rendering when PhysX isn't using all its power om physics".

 

ATI sier også at selv om en PPU har større effektivitet (f.eks 100% går til fysikk) enn en GPU (f.eks 80% går til fysikk) så har PhysX bare rundt 100 Gflops totalt med beregningskraft, mens X1900XTX har 375 Gflops totalt (750Gflops i crossfire modus). I tillegg har jo ATI og nvidia ekstremt minnebåndbredde. Det tviler jeg på at Aeiga har (Det ser ut som 64 eller 128 minnebuss på deres kort). Det var i hvertfall sånn de så på saken.

 

ATI sa også at "everything they [Aeiga] do with the PPU we can do with the GPU". Så det er ikke riktig at fysikken vil oppføre seg annerledes.

 

Hvis man ser tilbake til CPUer som 486SX med ekstern matteprosessor så var ytelsen på den langt lavere enn på en likt klokket 486DX med intern matteprosessor. Så jeg ser ikke helt grunnen til at flere omfavner Aegia sin løsning så voldsomt og antar at det må være best siden det er et eget kort og ikke belaster GPUen. Den samme situasjonen om 486SX vs. 486DX kan jo skje her.

 

Jeg har mer tro på nvidia og ATI enn på Aeiga rett og slett fordi begge grafikkprodusentene har mye bedre erfaring med å lage effektive design med ekstremt høy parallell ytelse enn Aeiga, og på grunn av at både Nvidia og ATI har store midler i form av penger, avtaler med brikkeprodusenter, og en bråte med flinke ingeniører allerede.

 

Hvorfor lage to brikker separat når man kan lage de sammen? Se på f.eks AMD og hvordan det gikk når de flyttet en halv northbridge (minnekontrolleren) inn i CPUen sin. Det ga langt bedre kommunikasjon mellom CPU og minnekontroller og økte dermed minneytelsen drastisk.

Lenke til kommentar

I teorien er jeg ganske enig med deg, Simen1. Men når man ser på det virkelige liv, så virker det som Ageia har fått et lite forsprang i form av bedre støtte i spill (du får meg ikke til å tro at nVidia vil klare å støtte alle spill med Havoc bare med drivere til skjermkortet; utvilkerne må også gjøre noe). Dessuten tipper jeg Ageia blir en billigere løsning også. Du må vel godt over prisen til PhysX-kortet for å finne et skjermkort som gjør samme nytten...?

 

Slik situasjonen er idag, er Ageia i tet med å få denne teknologien bragt til en spillopplevelse nær deg, med skjermkortprodusentent et lite stykke bak. Det bra her er at Ageia klarer å få nVidia til å skjerpe seg og kan komme med en bedre løsning om ikke så lenge.

 

Men jeg er enig i at nVidias løsning kanskje er den beste, hvis de bare får prisen til å bli riktig. Den har jo også den fordelen av at de spill som ikke har støtte for noen spesiell fysikkakselerator vil kunne utnytte SLI'en til å oomphe opp fps-en. :yes:

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...