C++ AMP, il GPU computing secondo Microsoft

C++ AMP, il GPU computing secondo Microsoft

Microsoft annuncia le estensioni C++ AMP che permetteranno agli sviluppatori di sfruttare in modo adeguato la potenza di calcolo messa a disposizione dalle GPU

di pubblicata il , alle 15:13 nel canale Programmi
Microsoft
 
43 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
devbeginner17 Giugno 2011, 16:14 #31
Originariamente inviato da: LMCH
Quella è stata una scelta deliberata di Apple e come forse ben saprai LLVM gira sia con o senza garbage collector (può essere implementato sia dai runtime che a livello di librerie di supporto specifico di un certo linguaggio).


una scelta cretina (non la prima, nemmeno l'ultima) lato sviluppo.
IL GC è stato creato per scaricare il dev del compito di dover allocare/disallocare risorse in continuazione.

Quando qualche sviluppatore chiede insistentemente il supporto gli viene risposto che "non ci sarà per evitare che l'autonomia cali drasticamente" adducendo che il garbage collector porta ad un aumento della memoria e delle risorse occupate.
Peccato sia esattamente il contrario, è molto meglio che un automa gestisca i vari use case piuttosto che un umano che si può tranquillamente dimenticare di rilasciare/deallocare le risorse.

Tant'è che l'iPhone non dura certo più degli altri smartphone di fascia alta.


Alla fin fine gli unici campi dove è necessario avere sempre sotto controllo lo stato di un oggetto in memoria sono le simulazioni e l'hard time in generale, ecco perché i motori grafici 3D sono (ancora) in C++.
Racer8917 Giugno 2011, 17:35 #32
sapete dove posso trovare una guida o una documentazione che mostra come funziona?
LMCH17 Giugno 2011, 17:55 #33
Originariamente inviato da: devbeginner
Alla fin fine gli unici campi dove è necessario avere sempre sotto controllo lo stato di un oggetto in memoria sono le simulazioni e l'hard time in generale, ecco perché i motori grafici 3D sono (ancora) in C++.


Oppure qualsiasi applicazione in cui maggiori prestazioni fanno la differenza, mica solo le simulazioni.
devbeginner17 Giugno 2011, 20:09 #34
Originariamente inviato da: LMCH
Oppure qualsiasi applicazione in cui maggiori prestazioni fanno la differenza, mica solo le simulazioni.


a parità di applicazioni ed HW sono proprio curioso di vedere quali mirabolanti differenze di prestazioni possa offrire l'iPhone rispetto ad un WP7 che si avvale di .NET o di Android con Java.
Benchmark alla mano.


Occhio perché stiamo parlando di utilizzo o meno del GC che può fare la differenza, non di come l'iPhone gestisca le applicazioni native piuttosto che quelle di terze parti, perché è tutt'altra faccenda.
LMCH17 Giugno 2011, 23:06 #35
Originariamente inviato da: devbeginner
a parità di applicazioni ed HW sono proprio curioso di vedere quali mirabolanti differenze di prestazioni possa offrire l'iPhone rispetto ad un WP7 che si avvale di .NET o di Android con Java.
Benchmark alla mano.


Il riferimento alle prestazioni era riguardo l'utilizzo di C++, non sulla scelta di non permettere l'uso del garbage Collector su iPhone.
Racer8919 Giugno 2011, 15:49 #36
la nuova libreria amp è già disponibile? vs2010 la integra o dobbiamo aspettare la prossima versione?
Tedturb023 Giugno 2011, 23:20 #37
Originariamente inviato da: devbeginner
.NET è standard ECMA da prima che tu conoscessi il significato di "open", posto che tu lo sappia anche ora.


da quanto ne so non tutto .net è standard e i brevetti royalty free.
Tedturb023 Giugno 2011, 23:25 #38
Originariamente inviato da: devbeginner
una scelta cretina (non la prima, nemmeno l'ultima) lato sviluppo.
IL GC è stato creato per scaricare il dev del compito di dover allocare/disallocare risorse in continuazione.

Quando qualche sviluppatore chiede insistentemente il supporto gli viene risposto che "non ci sarà per evitare che l'autonomia cali drasticamente" adducendo che il garbage collector porta ad un aumento della memoria e delle risorse occupate.
Peccato sia esattamente il contrario, è molto meglio che un automa gestisca i vari use case piuttosto che un umano che si può tranquillamente dimenticare di rilasciare/deallocare le risorse.

Tant'è che l'iPhone non dura certo più degli altri smartphone di fascia alta.


Alla fin fine gli unici campi dove è necessario avere sempre sotto controllo lo stato di un oggetto in memoria sono le simulazioni e l'hard time in generale, ecco perché i motori grafici 3D sono (ancora) in C++.


forse il fatto che iPhone non abbia GC è il motivo per cui all'atto pratico sembri ancora piu veloce dei moderni smartphone dual core con applicazioni scritte in java

solo un ipotesi eh
devbeginner29 Giugno 2011, 09:46 #39
Originariamente inviato da: Tedturb0
da quanto ne so non tutto .net è standard e i brevetti royalty free.


http://www.ecma-international.org/p...ds/Ecma-335.htm
ercole6929 Giugno 2011, 10:04 #40
Originariamente inviato da: devbeginner


Se leggi gli agreements dicono che le licenze sui brevetti relativi all'ECMA-335 (e sul ECMA-334 relativa a C#) sono concesse a tutti ma non necessariamente in modo gratuito (reasonable terms and conditions). Inoltre è vero che .NET è basato sull'ECMA ma non è detto che rispecchi l'ECMA al 100% quindi implementazioni "fuori standard" (come per l'xml di office) potrebbero essere coperte da brevetti non cedibili.

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

La discussione è consultabile anche qui, sul forum.
 
^