Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

Er det noen som vet hvorfor GPU'en kommer bedre ut?

Dagens mainstream-CPUer består gjerne av 2-8 kjerner som i relativt liten grad innbyr til parallellisering av utregninger sammenlignet med GPU. Disse klarer seg derfor gjerne best til sekvensielle oppgaver, i.e. utregninger der den neste operasjonen avhenger av hva man kom frem til i den forrige utregningen. Den regner ting i rekkefølge, den klarer riktignok å holde styr på noen få oppgaver parallelt men er begrenset av antall kjerner.

 

En relativt enkel GPU som f.eks. GTX 960 består av 1024 CUDA cores, som tillater den å gjøre mange flere, små operasjoner samtidig. Ta f.eks. oppgaven med å kontrollere om et gitt tall er et primtall. Dette er noe det ikke finnes effektive algoritmer for, og mesteparten av dagens kryptering (RSA, AES, DHKE etc) bygger på at faktorisering av primtall er ineffektivt.

 

La meg ta et litt forenklet eksempel: vi vil sjekke om tallet 373587883 er et primtall. Primtall er altså tall som kun er delelig på seg selv og 1, dvs. tall som ikke har andre faktorer enn seg selv og 1. Den eneste muligheten er å sjekke alle faktorer - brute force. (Nå trenger man riktignok ikke å sjekke absolutt alle faktorer, eksempelvis trenger man ikke å sjekke om tallet er delelig på 4 [= 2 * 2] når man allerede vet at det ikke er delelig på 2, og man trenger heller ikke sjekke tall høyere enn chart?cht=tx&chl=\sqrt 373587883. Et tall som ikke er primtall består av minst to faktorer, og hvis den ene faktoren er høyere enn roten av tallet selv må den andre faktoren være lavere. Logisk nok om du tenker litt over det. Tenker du videre over det kommer du til at du egentlig kun trenger å kontrollere alle primtall fra chart?cht=tx&chl=2 til chart?cht=tx&chl=\sqrt 373587883. Uansett, la oss se bort ifra denne parentesen, og ta utgangspunkt i at vi må gjøre enkle operasjoner for alle heltall fra 2 opp til 373587883-1).

 

Om du klarer å optimere denne oppgaven for en 8-kjerners CPU vil den kunne sjekke 8 tall per klokke-tick i CPU. I første omgang sjekker den tallene 2,3,4,5,6,7,8,9, i neste omgang sjekker den de neste 8 og så videre, frem til vi enten finner et tall som faktisk deler tallet vårt, eller frem til vi har sjekket alle potensielle faktorer.

 

Forutsatt at en GTX 960 klarer å utføre denne oppgaven på sine enkle kjerner kan man forenklet si (jeg vet ikke om det er så enkelt i praksis, men det gir en jist av forskjellen mellom GPU og CPU) at GTX 960 kan sjekke 1024 slike potensielle faktorer per klokkesykel mot bare 8 i CPU. Det avhenger riktignok av mer enn bare antall kjerner, men gir en idé om forskjellen mellom dem. Husk at man ikke trenger å vite om 373587883 er delelig med 15 for å finne ut om det er delelig med 16, så dette er ikke operasjoner som trenger å utføres sekvensielt. Fibonacci-tallrekken er et eksempel på noe som ikke kan paralelliseres på denne måten, og som derfor egner seg bedre på CPU, men den skal jeg ikke kaste bort tiden deres på å forklare her ;)

 

For å konkludere en smule: GPUer kan være vanvittig effektive på visse typer operasjoner som kan parallelliseres, mens CPUer på sin side er langt mer fleksible i forhold til hva de kan brukes til å regne ut. Bitcoin mining er et annet eksempel på oppgaver som mest effektivt kan gjøres på GPU, i tillegg til brute forcing av passord om du er av typen som befinner seg litt på kanten av loven.

 

For bitcoin mining har det pleid å være AMD som har vært kongen, mens vi foldere gjerne foretrekker nvidia - kanskje mest på grunn av strømforbruket på særlig Maxwell-serien (750ti + 9xx).

 

 

Så at Ar`Kritz skrev lenger opp at det vanligvis ikke lønner seg med prossessor-folding, så det betyr at denne kan slås av så man kun bruker GPU'en til folding? :)

Folding på nvidia-kort har en tendens til å legge beslag på endel CPU-kraft i tillegg. Siden det er en ganske dramatisk forskjell i PPD på GPU og CPU kan det svare seg å ikke folde på CPU for å frigjøre denne prosessorkraften til GPU-folding. For ikke å snakke om at poengene du genererer på CPU koster langt mer i antall watt enn poengene du genererer på GPU.

Endret av srbz
  • Liker 1
Lenke til kommentar

Mye mulig. I noen tilfeller kan det hende at folding på CPU og GPU samtidig gir såpass mye reduksjon i GPU-PPD at denne reduksjonen "spiser opp" det du tjener på CPU-folding. Dette kommer sikkert an på hvilke WU du folder. Noen er mer CPU-intensive enn andre.

 

For mitt vedkommende har jeg valgt å kutte ut CPU fordi 1) det skaper til tider mer lagg og 2) fordi watt/poeng er betydelig høyere for CPU enn for GPU. Nå har jeg ikke måleutstyr, men iflg. tek.no sin test av 4690 skiller det ca 80W mellom idle og load. GTX 970 har en TDP på ca. 145W, og når den produserer kanskje 20+ ganger så mye poeng som CPU sier det seg selv at CPU-poengene koster langt mer enn GPU-poengene. Det er kanskje ikke noe godt argument nå vinterstid, men jeg bor på vestlandet og mesteparten av året er det ikke minusgrader.

Endret av srbz
Lenke til kommentar

Velger ikke klienten bort en kjerne for hvert nvidiabaserte skjermkort? 2 tråder om du har HT? Så om du ikke gjør noe, har en 4kjerners prosessor og ett skjermkort taper du ikke noe (pga resursmangel til skjermkort) på å folde med de tre resterende prosessorkjernene.

 

Altså om du gir hvert skjermkort du har én kjerne (evt. to tråder) vil du bare tjene på å folde på de resterende kjernene.

 

Maskinen vil trekke litt mer watt. Men dette er marginalt (~50 w).

 

ppd / watt på cpu er generelt dårlig. Men om 100 000 folk ofrer 50 w for (fåglarna vet) hvor mye ppd en gjennomsnittlig prosessor vil gi, hjelper det på i lengden.

Lenke til kommentar

Brukte prosses lasso på 4790k @4.4ghz med 1 980ti.

Tildelte 1 kjerne med 1 tråd. det førte til at jeg fik feilmeldingen "får ikke svar fra fah" å valg mellomn å vente på svar eller avslutte.

Med andre ord virker det som enkelte c21 wu trenger litt mer puff en det for å funke optimalt.

  • Liker 1
Lenke til kommentar

Men om 100 000 folk ofrer 50 w for (fåglarna vet) hvor mye ppd en gjennomsnittlig prosessor vil gi, hjelper det på i lengden.

 

5 000 000 w på cpu folding?  Er det verdt det i lengden? En sitter ikke igjen med en liten bi-smak med tanke på at det egentlig skal være en god gjerning en gjør?

Lenke til kommentar

nvidia bruker 50% cpu for å folde.

 

Det kommer an på prosessor, skjermkort og prosjekt.

 

16-17% på en stock 2600k med referanse GTX 980 som folder C21 P9211.

14-15% på en stock 4790k med EVGA GTX 980 Ti SC+ som folder C21 P10496.

2x 26-27%  på en stock 4690k med 2x EVGA GTX 980 SC som folder C21 P11703 + P11705.

  • Liker 1
Lenke til kommentar

 

Men om 100 000 folk ofrer 50 w for (fåglarna vet) hvor mye ppd en gjennomsnittlig prosessor vil gi, hjelper det på i lengden.

 

5 000 000 w på cpu folding?  Er det verdt det i lengden? En sitter ikke igjen med en liten bi-smak med tanke på at det egentlig skal være en god gjerning en gjør?

 

Er forskningen som betyr noe, ferdig wu, ikke ppd. :tease:

  • Liker 1
Lenke til kommentar

Brukte prosses lasso på 4790k @4.4ghz med 1 980ti.

Tildelte 1 kjerne med 1 tråd. det førte til at jeg fik feilmeldingen "får ikke svar fra fah" å valg mellomn å vente på svar eller avslutte.

Med andre ord virker det som enkelte c21 wu trenger litt mer puff en det for å funke optimalt.

 

Jeg har sett det samme på maskinen som ble satt opp til min far.

Det er en i5 (4 kjerner) og 1/4 del tilsvarer 25%. Når da CPU er belastet mer enn 25%, så sier det meg noe om det du nevner over. Virker som om core 21 klarer å benytte seg av mer enn 1 kjerne på ett vis. Det ble foldet på 2 stk 980 ti i den maskinen jeg sikter til. CPU viste fra 30 - 33% belastning for Fah.. og tilsammen ble det 66% belastning på en i5.

 

Mulig jeg tar feil i mine antakelser og at dette kan forklares på andre måter, men det er ihvertfall hva jeg har observert med de nye prosjektene  :)

Lenke til kommentar

 

Brukte prosses lasso på 4790k @4.4ghz med 1 980ti.

Tildelte 1 kjerne med 1 tråd. det førte til at jeg fik feilmeldingen "får ikke svar fra fah" å valg mellomn å vente på svar eller avslutte.

Med andre ord virker det som enkelte c21 wu trenger litt mer puff en det for å funke optimalt.

 

Jeg har sett det samme på maskinen som ble satt opp til min far.

Det er en i5 (4 kjerner) og 1/4 del tilsvarer 25%. Når da CPU er belastet mer enn 25%, så sier det meg noe om det du nevner over. Virker som om core 21 klarer å benytte seg av mer enn 1 kjerne på ett vis. Det ble foldet på 2 stk 980 ti i den maskinen jeg sikter til. CPU viste fra 30 - 33% belastning for Fah.. og tilsammen ble det 66% belastning på en i5.

 

Mulig jeg tar feil i mine antakelser og at dette kan forklares på andre måter, men det er ihvertfall hva jeg har observert med de nye prosjektene  :)

 

Det har ikke jeg sett. En core/ht per kort. Ligger som jeg sa 12,5% per kort.

 

Mna: Ikke slik jeg gjør det på mine: Prioty class =always.

naci64=idle. core21/18/17 below normal.

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...