
ELABORAZIONE IN PARALLELO E VISUAL COMPUTING
NVIDIA® Parallel Nsight™, in combinazione con Visual Studio, semplifica al massimo lo sviluppo di applicazioni di GPU Computing per l’elaborazione in parallelo su larga scala. Grazie al debugging nativo delle GPU e alla sua serie di funzioni di profiling, Parallel Nsight offre il metodo più efficiente per il debug, il profiling e l’ottimizzazione del codice per GPU. Inoltre, Parallel Nsight fornisce visibilità all’esecuzione eterogenea dell’applicazione con una funzione di analisi che consente di massimizzare l’utilizzo delle GPU multi-core e l’accelerazione multi-GPU e multi-API.
Gli scienziati che vogliono portare a termine le proprie ricerche sino a 10 volte più velocemente, gli sviluppatori di applicazioni che vogliono sfruttare le GPU per la visualizzazione avanzata della grafica 3D e l’elaborazione scientifica o gli sviluppatori grafici che vogliono spingere al limite le DirectX possono usare Parallel Nsight per raggiungere questi e altri obiettivi con un’efficienza superiore a quella di qualsiasi altro ambiente di sviluppo.
SVILUPPO PER CUDA
NVIDIA Parallel Nsight per lo sviluppo di applicazioni di GPU Computing
NVIDIA Parallel Nsight è il primo ambiente di sviluppo per applicazioni di computing in parallelo integrato in Microsoft Visual Studio, l’ambiente di sviluppo più diffuso al mondo. Parallel Nsight è un potente strumento che permette ai programmatori di sviluppare sia per GPU che per CPU all’interno di Microsoft Visual Studio.
*NOVITÀ* per Parallel Nsight 2.1
- Supporto di CUDA 4.1.
- Nuova vista CUDA Warp Watch e pagina di informazioni su CUDA per un netto miglioramento dell’esperienza di
debugging delle applicazioni a threading massiccio.
- Profiler CUDA avanzato per un’analisi più approfondita delle prestazioni dei kernel.
- Supporto dei laptop Optimus che permette una ricca esperienza di Parallel Nsight agli sviluppatori CUDA che usano
un sistema singolo.

 |
DEBUGGER CUDA
> *NOVITÀ* Pagina di informazioni su CUDA che fornisce informazioni dettagliate sullo stato di CUDA nell’applicazione dell’utente. Gli utenti possono filtrare e individuare informazioni dettagliate su eccezioni, asserzioni, breakpoint, guasti MMU e passare facilmente a un warp specifico per eseguire il debug dei problemi.
> *NOVITÀ* CUDA Warp Watch offre un metodo più efficiente per navigare tra i thread dei residenti e visualizzare gli stati dei thread di un warp.
> *NOVITÀ* Pagina di informazioni sul sistema che rende disponibili queste informazioni collegando un monitor e fornisce dati più particolareggiati su tutti i dispositivi CUDA quali il modello del driver, l’architettura delle GPU, la memoria e altro ancora.
> *NOVITÀ* Break della GPU quando si incontra un asserzione CUDA.
> Permette il debug dei kernel CUDA C/C++ e DirectCompute direttamente su hardware GPU.
> Consente di esaminare migliaia di thread eseguiti in parallelo usando le familiari finestre Locals, Watch, Memory e Breakpoints di Visual Studio.
> Permette di visualizzare direttamente la memoria della GPU usando le finestre Memory standard di Visual Studio.
> Consente di usare i breakpoint condizionali per individuare e correggere rapidamente gli errori nel codice parallelo.
> Permette di individuare violazioni di accesso alla memoria con CUDA C/C++ Memory Checker.
|
| |

 |
PROFILER E TRACER DELLE APPLICAZIONI DI CUDA
> *NOVITÀ* Il profiling di CUDA consente agli sviluppatori di comprendere i problemi di prestazioni provocati dai seguenti fattori:
- Divergenza di thread o diramazioni del codice;
- Statistiche sull’uso della memoria;
- Statistiche sui motivi di stallo;
- Efficienza delle istruzioni;
- Valori di FLOP raggiunti.
> *NOVITÀ* Il tracciamento dei carichi di lavoro ora consente di analizzare le dipendenze e di invocare lo stack per seguire i carichi di lavoro delle GPU, le chiamate corrispondenti alle API e il codice host che ha causato l’attività.
> *NOVITÀ* CUDA Trace aggiunge supporto per copie concomitanti delle tracce di memoria e dei set di memoria.
> *NOVITÀ* Il tracciamento del sistema supporta la cattura di dati da un processo a 64 bit lanciato da un processo a 32 bit.
> *NOVITÀ* Supporto delle API OpenCL 1.1.
> *NOVITÀ* Le pagine dei report NVTX e Direct3D Performance Marker ora supportano la visualizzazione delle statistiche di tutte le chiamate alle API di CUDA, OpenCL, Direct3D e OpenGL realizzate durante un intervallo oltre che tutto il lavoro della GPU generato da queste chiamate.
> *NOVITÀ* Riquadro di correlazione che permette il mining di dati selezionati nelle tabelle report o nella vista cronologica.
> Profiling dello shader DirectCompute.
> Cattura di eventi a livello di CPU e GPU, fra cui: chiamate delle API, lanci del kernel, trasferimenti di memoria e annotazioni di applicazioni personalizzate.
> Una singola cronologia correlata che visualizza tutti gli eventi catturati.
> Strumenti di ispezione della cronologia che permettono l’esame delle dipendenze del carico di lavoro.
> Possibilità di filtrare e ordinare gli eventi catturati usando viste di reporting specializzate.
> Possibilità di profilare kernel CUDA usando contatori di prestazioni della GPU.
|
SVILUPPO GRAFICO
NVIDIA Parallel Nsight per lo sviluppo grafico su GPU
Il software NVIDIA Parallel Nsight è il primo ambiente di sviluppo del mondo dedicato ad applicazioni di computing in parallelo e integrato in Microsoft Visual Studio, l’ambiente di sviluppo più diffuso al mondo. Questa soluzione permette lo sviluppo grafico, il debugging nativo di GPU e API, oltre all’ottimizzazione avanzata delle prestazioni per DirectX 10 e DirectX 11.
*NOVITÀ* per Parallel Nsight 2.1
- Dynamic Shader Editing permette l’editing e la ricompilazione degli shader senza interrompere l’esecuzione
dell’applicazione. Questo può aiutare a risolvere i problemi di rendering del debugging, oltre a
testare le ottimizzazioni al volo.
- La pagina Frame Timings permette di eseguire un profilo rapido su un frame catturato per vedere vari timing d
ciascuna chiamata draw per accelerare la profilatura.
 |
ISPETTORE GRAFICO E DEBUGGER
> *NOVITÀ* Editing dinamico dello shader durante l’esecuzione dell’applicazione.
> *NOVITÀ* La pagina Shader Inspector mostra il buffer delle costanti indicando i nomi delle variabili HLSL.
> *NOVITÀ* HUD Nsight per il debugging della grafica all’esterno di Visual Studio.
> Esame in tempo reale delle chiamate di rendering DirectX.
> Esame interattivo dello stato della pipeline delle GPU, inclusa la visualizzazione delle texture vincolate, della geometria e dei buffer di calcolo.
> La funzione Pixel History mostra tutte le operazioni che influiscono su uno specifico pixel.
> Possibilità di debugging nativo di tutti gli shader grafici HLSL direttamente sull’hardware della GPU.
> Esame dell’esecuzione degli shader in parallelo usando le famigliari finestre Locals, Watch, Memory e Breakpoints di Visual Studio.
> Permette di visualizzare e interagire a livello del codice sorgente con tutti gli shader caricati dall’applicazione.
> Permette di individuare gli shader che influiscono su ogni specifico pixel o primitiva, oppure che utilizzano breakpoint condizionali.
|
| |

|
PROFILER E TRACER DELLE APPLICAZIONI GRAFICHE
> *NOVITÀ* Pagina Frame Timings che visualizza informazioni avanzate sul timing dei drawcall.
> *NOVITÀ* Sessioni Frame Profiler che possono essere salvate e ripristinate e consentono la condivisione dei risultati del profiling.
> *NOVITÀ* Il tracciamento del sistema supporta la cattura di dati da un processo a 64 bit lanciato da un processo a 32 bit.
> *NOVITÀ* Supporto del tracciamento dei carichi di lavoro di DirectX e OpenGL, dei trasferimenti di memoria e correlazione di questi al buffer dei comandi e alle chiamate delle API.
> Tracciamento di Direct3D, OpenGL e Cg API.
> La funzione Frame Profiler identifica i colli di bottiglia delle prestazioni e l’utilizzo della GPU.
> La soluzione permette di salvare i frame catturati per la collaborazione e l’analisi offline.
|