Rilasciato Doom 3 per Mac
Uno tra i più celebri sparatutto del momento viene finalmente rilasciato anche per piattaforma Mac Os X
di Andrea Bai pubblicata il 15 Marzo 2005, alle 16:28 nel canale ProgrammiMac OS X
Uno tra i più celebri sparatutto del momento viene finalmente rilasciato anche per piattaforma Mac Os X
di Andrea Bai pubblicata il 15 Marzo 2005, alle 16:28 nel canale Programmi
Isar Aerospace potrà far decollare i suoi razzi spaziali dalla Nuova Scozia (Canada) aumentando la sua attività di lancio
La NASA ha confermato che un meteorite da 1,5 metri di diametro è esploso nei cieli sopra il New England il 30 maggio
La NASA rinuncia alla costruzione del modulo di transizione dalla ISS alle future stazioni spaziali commerciali
PLD Space ha incrementato gli investimenti per il sito di lancio dello spazioporto della Guyana francese
Leica Cine Compact 1 è il nuovo proiettore compatto con tecnologia laser e facile da configurare
iPhone 18 Pro, addio all'arancione? Apple avrebbe scelto le quattro colorazioni
Il britannico John McFall potrebbe diventare il primo astronauta con disabilità fisica a raggiungere l'orbita grazie a Vast
Il lancio degli occhiali smart di Apple è stato posticipato per evitare un flop come il Vision Pro?
La Cina ha lanciato a sorpresa il nuovo razzo spaziale riutilizzabile Lunga Marcia 12B
Accordo tra Francia e Vast: un astronauta volerà a bordo di una missione privata verso la ISS, un altro sulla stazione spaziale Haven-1
Reolink lancia le nuvoe serie OMVI e Power-Efficent: ecco tutti i prodotti
Sembrerebbero esserci buone notizie per il ritorno al volo del razzo spaziale New Glenn di Blue Origin
Bernie Sanders propone una tassa del 50% sulle azioni delle aziende AI: la proprietà andrebbe ai cittadini
Samsung ha in programma il lancio di tre nuovi Galaxy Watch
138 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infox fek
allora io mi eclisso, quì non sono nessuno!
Re: Re: Re: X Caesar_091
--------------------------------------------------------------------------------
Originariamente inviato da fek
A quanto so il motore di Q3 (e derivati) sono strettamente single thread.
--------------------------------------------------------------------------------
Andare a dare un'occhiata al sito che ho postato prima di insistere no eh?
Faccio riferimento a questo tuo topic.
Non so se sei stato preso dalla fretta, oppure hai letto male, ma questo e' cio' che hai scritto.
Riassumendo:
- Il motore 3d di Q3 e' multi threaded? No. Di questo ne sono certo.
- Il gioco e' multi threaded? Su PC sono sicuro di no, su Mac non mi sento di escluderlo a priori anche se mi sembra improbabile per varie ragioni. Ma alcuni benchmark ed un'intervista direbbero il contrario.
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: X Caesar_091
Alcuni dei benchmark che mi hai fatto vedere riportano quei dati che parlano di guadagni fino al 10% facilmente spiegabili.é
Forse ti sei perso un pezzo del tread.... quei test sono stati fatti:
-nel 2000
-con Quake3 1.17
-con MacOS X 10.0 Public Beta
Se quelli recenti non ti sembrano attendibili... questi cosa sono? Come minimo NC
e pensare che questa diatriba è iniziata x nulla! Basta tornare alle prime pagine x farci rendere conto che tutto questo non ha senso, alla fine.
x fek
allora io mi eclisso, quì non sono nessuno!
Ma va
Al contrario, i tuoi interventi mi sono sembrati assolutamente precisi.
Re: Re: Re: Re: X Caesar_091
- Il motore 3d di Q3 e' multi threaded? No. Di questo ne sono certo.
- Il gioco e' multi threaded? Su PC sono sicuro di no, su Mac non mi sento di escluderlo a priori anche se mi sembra improbabile per varie ragioni. Ma alcuni benchmark ed un'intervista direbbero il contrario.
Fammi sapere quando arriverai a trovare la verità assoluta anche dal punto di vista del programmatore. Perché a me che sia single o multi thread poco importa.
Sta di fatto che il guadagno non è dell'1-10% ma decisamente di più.
Re: Re: Re: Re: Re: Re: Re: X Caesar_091
Fammi sapere quando arriverai a trovare la verità assoluta anche dal punto di vista del programmatore. Perché a me che sia single o multi thread poco importa.
Sta di fatto che il guadagno non è dell'1-10% ma decisamente di più.
Solo in alcuni test sembra molto piu' del 10% e non in tutte le situazioni. Infatti ho trovato quei test curiosi e fornito alcune spiegazioni a mio avviso plausibili. Nessuno ha parlato di verita' assolute (a parte le tue ovviamente
Ad esempio:
PS: tanto per aprirti gli occhi... l'opzione per il SMP funziona anche su Quake3 (e giochi derivati) per Windows/Linux... solo che su PC le macchine dual processor sono meno diffuse....
La prossima volta ti consiglio di essere piu' educato e meno precipitoso.
programmazione
ora non so se la cosa valga anche per i giochi, lo chiedo a fek, ma che io sappia, un programma x poter beneficiare di più processori (fisici o logici che siano), devono includere particolari librerie, a volte anche proprietarie, librerie che introducono dei costrutti che permettono di specificare a una parte del codice su quale processore dev'essere eseguita. Da quel poco che so, in ambito scientifico il multithread e parallelismo in generale x programmare in c++ (vedi MPI, sui cluster), l'argomento non è affatto banale, ma sicuramente trovare un applicazione del multithreading sui motori 3d è una strada tutta nuova, nonostante i precedenti esperimenti della ID con Q3.fek, confermi?
Re: Re: Re: Re: Re: Re: Re: Re: X Caesar_091
Solo in alcuni test sembra molto piu' del 10% e non in tutte le situazioni. Infatti ho trovato quei test curiosi e fornito alcune spiegazioni a mio avviso plausibili. Nessuno ha parlato di verita' assolute (a parte le tue ovviamente
Se solo avessi un dual G4 o un dual G5 sarei disposto ad invitarti una sera a bere una cosa qui da me e farti vedere con i tuoi occhi come stanno le cose. Non mi invento nulla e non parlo per sentito dire.
Ma attualmente, sfortunatamente, ho solo un G4 singolo e non posso dimostrartelo "live". Però ho accesso a diverse macchine dual CPU quindi l'invito è sempre valido... fattà eccezione per la cosa da bere che dovremmo andare a prendere da un'altra parte
La prossima volta ti consiglio di essere piu' educato e meno precipitoso.
Educato lo sono sempre... e non mi sembra che quella che hai citato rappresenti un'eccezione.
Precipitoso perché?
Ho sempre detto cose vere.
Siete voi che siete partiti convinti del fatto che tutto quello che avevo scritto era una gran baggianata o sbaglio?
Ed vero che le macchine dual CPU sono meno diffuse tra gli utenti x86 se ti riferivi a questo per il "precipitoso".... quindi è normale che magari alcuni l'opzione per il SMP non la conoscevano.
Re: Re: .
Precipitoso perché?
Ho sempre detto cose vere.
Siete voi che siete partiti convinti del fatto che tutto quello che avevo scritto era una gran baggianata o sbaglio?
La tua risposta al mio intervento che ho quotato (oltre a non essere uno scinitillante esempio di educazione) lasciava presupporre che io avessi scritto una fesseria sul motore 3d di Quake 3.
Inoltre qui hai scritto una cosa non vera:
Sarà.... ma in tutti i giochi che usano il motore di Quake3 (e per certi versi anche quello di UT2003/4) le performnces sono fino al 40% in più....
EDIT: intendo con il SMP attivo
Ed e' cio' che ho corretto con il mio intervento. Questa e' semplicemente un'affermazione falsa, perche' sia il motore di Q3 sia quello di UT sono strettamente single thread.
Riguardo al game code di Q3 su Mac, ho scritto che non escludo a priori la possibilita' che sia stato riscritto per supportare il multiprocessing, anche se lo trovo improbabile per svariati motivi. Ma l'intervista ed alcuni benchmark sembrano dimostrare il contrario. Non ho altri elementi per giudicare (non ho mai visto il codice sorgente).
Re: programmazione
ora non so se la cosa valga anche per i giochi, lo chiedo a fek, ma che io sappia, un programma x poter beneficiare di più processori (fisici o logici che siano), devono includere particolari librerie, a volte anche proprietarie, librerie che introducono dei costrutti che permettono di specificare a una parte del codice su quale processore dev'essere eseguita. Da quel poco che so, in ambito scientifico il multithread e parallelismo in generale x programmare in c++ (vedi MPI, sui cluster), l'argomento non è affatto banale, ma sicuramente trovare un applicazione del multithreading sui motori 3d è una strada tutta nuova, nonostante i precedenti esperimenti della ID con Q3.
fek, confermi?
Piu' che includere particolari librerie si tratta di parallelizzare determinati algoritmi che al momento sono implementati serialmente. Un esempio banale puo' essere la gestione degli oggetti che al momento segue piu' o meno una pipeline seriale di questo tipo (con varie differenze da motore a motore):
1) Controlla se l'oggetto e' visibile
2) Animalo se necessario
3) Prepara il suo render state e le sue texture
4) Spediscilo alla GPU per il rendering
Questo semplice algoritmo e' eseguito passo dopo passo, un passo per volta, dalla CPU. Con piu' CPU potrebbe essere eseguito qualcosa di questo tipo:
- Metti in coda l'oggetto alla CPU con meno oggetti in coda
Per ogni CPU:
- Prendi il primo oggetto dalla coda e controlla se e' visibile
- Mettilo in coda per essere animato
- Quando e' pronto, mettilo in coda per essere renderizzato (serializzato)
Un'unica coda con tutti gli oggetti pronti per essere renderizzati:
- Prendi il primo oggetto in coda e prepara il suo render state e le sue texture
- Spediscilo alla GPU per il rendering
L'ultimo passo dev'essere per forza serializzato, ma gli altri passi possono andare in parallelo sulle varie CPU perche' ogni oggetto puo' essere trattato indipendentemente dagl'altri.
Questo e' solo un esempio per dare l'idea delle complicazioni che si hanno in un render loop non strettamente single-thread.
Non l'ho ancora implementato, ed ho comunque tralasciato tutta una serie di problemi, quali ad esempio l'ordinamento degli oggetti prima del rendering.
In un altro thread e' stato postato un interessante link ad un'intervista a Tim Sweeney (il tech lead di Unreal 3) proprio riguardo al multi processing in un motore 3d.
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".