Link e risorse utili.
Directory da usare per il cluster di laboratorio 2:
Per gli studenti: \\polo-shared.polocesena.unibo.it\UtentiScienze\studenti\<nome utente>
Per il docente: \\polo-shared.polocesena.unibo.it\UtentiScienze\personale\<nome utente>
Per una bella introduzione al calcolo parallelo cliccate qui.
Il cluster HPC che abbiamo creato a Cesena può essere usato anche da linea comando:
http://technet.microsoft.com/en-us/library/cc972841(WS.10).aspx
E al seguente indirizzo trovate un interessante script per assegnare il processo con rank 0 ad un ben preciso nodo: http://gallery.technet.microsoft.com/scriptcenter/58522f51-fcb5-4cd6-8ddd-4d2b0fcb608a
Notate che il precedente Script Centre di Microsoft. Per infomazioni su POWERSHELL potete consultare il manuale.
Intel:
http://software.intel.com/en-us/articles/intel-guide-for-developing-multithreaded-applications/
Microsoft:
Patterns for Parallel Programming
http://www.microsoft.com/downloads/details.aspx?familyid=86B3D32B-AD26-4BB8-A3AE-C1637026C3EE&displaylang=en
http://social.technet.microsoft.com/wiki/contents/articles/mpi-application-development-for-windows-hpc-server.aspx
http://msdn.microsoft.com/en-us/concurrency/default.aspx
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8442
Perfmon una utility che hanno tutti senza saperlo e senza sapere a che cosa serve....
http://technet.microsoft.com/en-us/library/cc749115(v=ws.10).aspx
Xperf e i suoi successori:
http://msdn.microsoft.com/en-us/performance/default
SysInternals una enorme collezione di utility:
http://technet.microsoft.com/en-us/sysinternals/default
OpenMP in Visual Studio:
http://msdn.microsoft.com/en-us/library/tt15eb9t(v=VS.100).aspx
Libri di testo:
"Parallel Scientific Computing in C++ and MPI (A Seamles Approach to Parallel Algorithms and Their Implementation)" ( Cambridge )
"Using OpenMP Portable Shared Memory Parallel Programming" (MIT press)
Inoltre Using MPI 1&2
Potete scaricare il reference sheet di OpenMP 3.0 (o la versione 2.5 ) .
OPENCL
Un primo tutorial di OpenCL argomento che verrà trattato nel corso edizione 2012:
http://www.codeproject.com/Articles/92788/Introductory-Tutorial-to-OpenCL .
Il sito del libro della manning OpenCL in Action, da cui potete scaricare i primi capitoli e il codice sorgente.http://www.manning.com/scarpino2/
Il sito ufficiale dell'OpenCL Standard:
http://www.khronos.org/opencl/ .
l'SDK di INTEL:http://software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/
Un primo tutorial di OpenCL argomento che verrà trattato nel corso edizione 2012:
http://www.codeproject.com/Articles/92788/Introductory-Tutorial-to-OpenCL .
Il sito del libro della manning OpenCL in Action, da cui potete scaricare i primi capitoli e il codice sorgente.http://www.manning.com/scarpino2/
Il sito ufficiale dell'OpenCL Standard:
http://www.khronos.org/opencl/ .
l'SDK di INTEL:http://software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/
Librerie BOOST
Ovviamente il sito delle librerie : http://www.boost.org/
Un libro di testo gratis su queste:
http://en.highscore.de/cpp/boost/
un ottimo libro di testo sul threading in C++: http://www.manning.com/williams/
Un Tutorial sulle BOOST thread: http://www.codeproject.com/KB/threads/StartingBoostThreads.aspx?q=boost+library+tutorial
( Per un tutorial generale : http://www.codeproject.com/Articles/4496/An-Introduction-to-Boost )
Per le Lambda Functions:http://www.codeproject.com/Articles/71540/Explicating-the-new-C-standard-C-0x-and-its-implem#LambdaExpressions