Berkeley UPC - Unified Parallel C
UPC, is a portable implementation of Unified Parallel C (UPC) that runs on many different parallel systems available today.
Pour ce TP, il est recommandé d'utiliser la machine
ssh user@mesoshared.univ-fcomte.fr
mesoshared
ssh user@mesoshared.univ-fcomte.fr
Exemple
Un exemple simple HelloWorld
écrit en upc.
- HelloWorld
#include <upc_relaxed.h> #include <stdio.h> int main() { printf("Hello from thread %i/%i\n", MYTHREAD, THREADS); upc_barrier; return 0; }
Compilation
Il faut tout d'abord charger le module upc.
$ module load lang/upc
Compilation :
$ upcc HelloWorld.upc -o HelloWorld
Exécution
Pour l'exécution on utilise la commande upcrun
en spécifiant le nombre de threads à utiliser -np NombreThread
Par exemple, on lance HelloWorld sur 4 threads.
$ upcrun -np 4 ./HelloWorld