INF560 Calcul Parallèle
Sujet de stage en lien avec le cours
Cours
- Introduction, machines parallèles, threads JAVA pdf
- PRAM, Introduction à CUDA pdf
- Introduction à CUDA pdf
- JAVA/CUDA et synchronisation pdf, le film
- Remote Method Invocation en JAVA (RMI)
pdf
- Algorithmique sur réseau en anneau
pdf
- Communication et routage
pdf
- Dépendances et parallélisation pdf
- Géométrie des systèmes distribués pdf
- Poly
pdf,
html
Codes du cours
- Compte.java, Compte3.java
-
Banque.java,
CS1.java,
essaimon0.java,
essaimon1.java,
Semaphore.java,
EssaiPV.java,
Essai1.java,
Essai2.java,
Lance.java,
Exemple1.java,
Exemple2.java,
Phil.java,
Dining.java,
EssaiPVsup.java,
EssaiPVsup2.java,
- CUDA: matrix.cu, transpose.cu
- RMI: ActivatableLightBulbServer.java,
RMILightBulb.java,
LightBulbClient.java,
Setup.java,
activepolicy,
Vecteur.idl,
VecteurImplem.java,
VecteurServeur.java,
VecteurClient.java
TDs
- Sujet TD1 (threads JAVA); vous pouvez utiliser
UnEntier.java, MsgQueue.java, Process.java
correction.
- Sujet TD2
vous pouvez utiliser CircularList.java, (threads JAVA, suite et fin)
correction, CPUScheduler.java,Test.java,Tri.java
- Sujet TD3-4 (CUDA)
- Sujet TD5 (JAVA, synchronisation et RMI);
vous pouvez partir du Hello : Hello.java, HelloInterface.java,
HelloClient.java,
HelloServer.java
Miniprojets
Au choix (implem JAVA/RMI ou CUDA voire couplage des deux via JCUDA) :
La notation du cours se fait sur le projet, sous la forme d'un court rapport (5 pages environ) et d'une soutenance. Dans le rapport, nous n'attendons pas d'introduction générale, que ce soit sur le calcul parallèle ou sur le sujet choisi. Nous attendons une présentation des algorithmes (pas de code), des tests, des performances de votre implémentation, en particulier par rapport à une implémentation séquentielle, avec éventuellement des comparaisons de plusieurs versions successives qui améliorent les précédentes. Dans le cas de binômes, nous attendons également une description de la répartition des tâches entre binômes.
Liens et documentations