Gå til innhold

Shell

Medlemmer
  • Innlegg

    107
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av Shell

  1. ... og vi skal ikke glemme at NRKs Nett-TV holder stengt for deg som av en eller grunn skulle befinne deg utenfor Norges grenser.

    Skulle oenske NRK kunne gjort noe med dette.

     

    Det er utrolig kjedelig for alle oss tusen som studerer/jobber i utlandet og ikke faa sett nordisk vinter sport. Det er saa og si ingen mulighet for aa se det om man ikke har norsk/svensk vpn.

     

    For de som oensker seg uk/usa ip anbefaler jeg http://www.ukproxyserver.co.uk/

  2. edit: ok, denne funker fint og ser bedre ut enn den jeg laget over:

    char* Binary::msbLeft()
    {
      char* bitL = new char[17];
    
       for ( int i = 0; i < 16; i++ )
           bitL[i] = '0' + ( input >> 15-i & 1 );
       bitL[16] = '\0';
    
      return (bitL);
    }
    

     

    Hmm, denne har jeg ikke sett før Shell, hva skjer her? :)

     

    ( ( input & 1 << i ) != 0 ? 1 : 0 )

     

    input & 1 << i ?

    7291931[/snapback]

    Tror den er riktig, du kan også skrive den slik:

    #define BIT( num ) ( 1 << num )
    ( ( input & BIT( i ) ) != 0 ? 1 : 0 )
    

    Vil returnere 1 om BIT( x ) er satt i input, ellers 0. Men litt slitsomt å gjøre det slik fant jeg ut (se løsning over i samme post).

  3. Hva med denne:

    char* Binary::msbLeft()
    {
       char* bitL = new char[17];
    
       for ( int i = 15; i >= 0; i-- )
           bitL[i] = '0' + ( ( input & 1 << i ) != 0 ? 1 : 0 );
       bitL[16] = '\0';
    
       return (bitL);
    }

    Ok, du vil vel ha msb til venstre i stringen? fra 15 til 0 istedenfor 0 til 15 da tror jeg.

  4. #include <stdio.h>
    #include <stdlib.h>
    
    
    void print_table(unsigned int **buf, int size) {
       int i;
    
       for(i=0; i<size; i++)
           printf("%d\n", *buf[i]);
    }
    
    int main(int argc, char **argv) {
       int i;
       int h = 4, w = 8;
    
       unsigned int *aBuf;
    
       // alloc data
       aBuf = malloc( sizeof(int)*h*w );
       // alloc pointers
       unsigned int *aPtr = malloc(sizeof(int)*w*h);
    
       // init data
       for(i=0; i<h*w; i++)
           aBuf[i] = i;
    
       // init pointers to data
       for (i=0; i<h*w; i++)
           aPtr[i] = &aBuf[i];
    
       print_table(&aPtr, h*w);
    }
    

    Usikker på hva du ønsker, hva med denne?

  5. Glimrende nyheter, håper ATI/NVIDIA kommer etter

    Nøkkelen er å få spillprodusentene til å gå vekk fra DirectX og over på OpenGL.

    Det blir vanskelig da spill utviklere oftere utvikler spillene for både PC og konsoller, XBOX 360 har ikke OpenGL støtte.

     

    Blir vel mer at man vil støtte både DirectX og OpenGL i spill. ID software's neste spill motor støtter DirectX/OpenGL slik at spillet kan gis ut på Mac/Linux/Windows/XBOX 360.

  6. Det er ikke noen magisk metode som kan slå sammen flere CPUer for å kjøre en enkelt tråd, selv om det er slik det er blitt misforstått som (og deretter kjørt store oppslag om, uten kildekritikk tydeligvis).

    Jo det er mulig, kjør samme tråd på alle kjerner, velg en av de :)

     

    Ok det er ikke mye vits, hvordan i huleste skal man klare å få en ytelses forbedring, det er problemet!

     

    Og nå idéen:

    Det hadde vært veldig moro om AMD sin Reverse Hyper Threading er noe i disse baner, for det vil bekrefte at denne ideen er effektiv nok til å gi ytelses forbedringer, som jo er problemet:

    1. Kjør tråden på alle kjerner, synkroniser kjøringen ved spesifikke punkter i koden basert på hvilke instruksjoner som skal kjøres.

    2. Kjernene kjører samme kode parallellt, men ved predictions velger de alltid forskjellig fra hverandre.

    3. Når første kjerne blir ferdig med en del av koden kommer den til neste synkroniserings punkt. Alle kjerner som ikke er ved synkroniserings punktet flushes (blir samme som en mis-prediction omtrent).

    4. Gå til 1 og repeter for neste sekvens av kode.

     

    Positivt:

    For to kjerner vil det halvere antall mis-predictions, for fire kjerner gir det 1/4 så mange mis-predictions (så vidt jeg kan se). Poenget er ihvertfall at det blir færre mis-predictions, og mis-predictions er dyrt.

    Negativt:

    CPUen trenger sentral logikk som synkroniserer prosessorene, gjør kjøringen av tråden tregere.

     

    Hvem vet, kanskje AM2 CPUene har slik sentral logikk, en software oppdatering gjør susen.

  7. - The lack of a real write-back method on the GPU is also going to hurt it in the world of physics processing for sure. Since pixel shaders are read-only devices, they can not write back results that would change the state of other objects in the "world", a necessary feature for a solid physics engine on all four counts.

    Godt poeng. Tenkte ikke på dette i det hele tatt, men nå ser jeg problemet med fysikk på GPU. Det er mulig med "write-back" på DirectX 9 (link), men det er en kostbar operasjon og vil garantert gå en del ut over FPS. (vil gjøre seg godt med en GPU for fysikk beregniner alene..). Har en følelse av at fysikk på GPU er totalt underlegen det på PPU nå.

     

    Altså skal du avlaste CPU'en og lage interaktive verdener som kan ødelegges (gøy!) ...

    Red Faction hadde det og klarte seg fint uten PPU, var ikke så gøy at jeg fullførte spillet heller :)

     

    Hm hvorfor satser dem heller ikke på å utnytte en av kjernene

    på dual core systemer? De fleste spill jeg har prøvd frem til

    i dag støtte ikke dual core, og jeg kunne veldig gjerne tenkt

    meg å bruke den andre kjernen til noe nyttig i de spillene

    som trenger fysikk regning.

    Min lille teori: Fordi det ikke er nok kraft i dual-core. Dual-core gir ingen magisk ekstra CPU kraft i forhold til tidligere (Ved hjelp av flere kjerner klarer vi nå å holde tritt med Moores lov, ikke raskere enn). Spillutviklere vil over de neste årene plukke opp kraften som finnes ledig i den andre kjernen. Dessuten er det så ineffektivt å gjøre beregningene på en CPU i forhold til en PPU, når spill virkelig kommer til å gjøre mange fysikk beregniner (simulering av klær holder) hjelper det mye med PPU.

  8. Det er litt synd hvis MS' løsning utelukker Ageia. Jeg syntes de på alle måter har livets rett. Det virker nestem om de fikk den store ballen til å rulle ved å lansere PhysX. Nå skal 'alle' andre levere fysikkløsninger som er 'bedre' og basert på helt andre ting enn PPU. Jeg som andre vil selvfølgelig ha det beste, billigste og mest utbredte, men jeg heier enda litt til på Agiea som blir David mot Goliat(ene).. ;)

    6352123[/snapback]

     

    Ageia hadde aldri livets rett, så det argumentet godtar jeg ikke. Jeg synes det er ganske åpenbart at forbrukerne bør bli spart for et fordyrende tilleggskort når disse funksjonene kan gjøres av CPU eller GPU. Så jeg er ikke lei meg for at et fordyrende alternativ blir erstattet av noe billigere og bedre.

    6352171[/snapback]

    Litt tidlig å si om Ageia har livets rett. Jeg ville nesten tro du hadde sagt noe lignende hvis dette var en debatt om de første GPU'ene. GPU'en er en massiv paralell arkitektur og er derfor mye bedre å bruke en CPU'en til det GPU'en nå gjør. Tiden vil vise om PPU'en er så mye mer effektiv på fysikk beregniner enn GPU/CPU at den kommer til å trenges. Billigere på CPU/GPU ja, men ikke bedre om Ageia gjør tingene sine rett da hverken GPU og spesiellt CPU på langt nær er så spesialisert på typiske fysikk beregniner som en PPU, skulle bare mangle da CPU og GPU bare vil generaliseres mer og mer (virtuell CPU, shadere, etc.).

     

    Nok av fysikk berergniner som skal gjøres om utvikler legger opp til det; simulering av klær, massevis av objekter, bøying av objekter, væske simulering, ødeleggelse av omgivelser/bygninger. Får bare håpe det kommer mer av slikt i spill, PPU'en har for mye kraft i forhold til hva som finnes i spill i dag.

  9. Eneste jeg har sett av klipp på nettet dreier seg bare om objekter som allerede er løse; tønner, kasser, biler osv. Men dette klarer man jo fint å sette i sving med cpu + gpu. Så når kan vi vente oss litt framskritt?

     

    Hvis du selger disse kortene så regner jeg med at du har en viss peiling om dem og deres framtid. Hvis vi tenker noen år tilbake så klarte man jo fint å lage destruktive hus, landskaper osv. i Red Faction for å nevne ett spill. Når kan dette skje med PhysX?

    Red Faction var ikke særlig til suksess var det det da? Forandrer gameplayet en del om det skal kunne gå ann å bombe seg gjennom stort sett alle vegger. Men at en del geometri kan ødelegges høres bedre ut, f.eks. at hjørner og hus i en gate kan ødelegges på forskjellig måte ut fra hva som treffer det fra ulike vinkler. Og at bitene man skyter bort faktisk faller ut. Kan gjøres allerede, men det er bare å implementere det som tar tid. Det hadde sett spektakulært ut.

     

    Å sprenge 50 tønner i lufta i stede for 10 kaller jeg ikke mye framskritt...

    6008188[/snapback]

    Litt enig, men innlevelsen blir litt bedre når det er så mye som flyr veggimellom :)

  10. Hvor selges kortet, og hva koster det?

    6007575[/snapback]

    Kommer ikke til Norge før i mai/juni så vidt jeg vet. Det er mulighet for å kjøpe kortet om du har pengene: link

     

    Noe av det kuleste er at med PhysX kort kan partikler kollidere og sprette tilbake fra bakke/omgivelser, mao. gjøre kollisjons deteksjon for hver frame, noe som ville vært veldig CPU intensivt.

  11. Under installasjonen av GRAW måtte jeg installere Ageia PhysX drivere selv om jeg ikke har et PhysX kort installert på maskinen? Er dette bra for maskinen?

    6000321[/snapback]

     

    Forresten... hvis man tar og avinstallerer disse driverne er det stor mulighet for at du vil merke betydelig økning i ytelse. Det gjorde det ihvertfall for meg og for mange andre på det offesielle forumet.

    6000779[/snapback]

    Placebo effekten? Tviler på at dette har noe særlig å si. Driverne gjør at du uten noe mer klunder automatisk skal kunne ta i bruk PhysX kort om du har det.

×
×
  • Opprett ny...