Projet MI205 Simulation de collision de galaxy
L'objectif de ce projet est de réaliser la simulation de la collision de deux galaxies, la nôtre la voie lactée et Andromède notre voisine la plus proche, cette collision aura lieu dans 4 milliards d'années.
Ce projet a été réaliser sur une carte de développement NVIDIA Jetson KT1
$ make all // Compilation du projet
Si erreur de compilation, créée un dossier obj dans le dossier CUDA et/ou opengl. Depuis le dossier SAVARY_ALBERTY :
$ ./cuda/bin/cuda // Démarrage le projet en utilisant CUDA
$ ./opengl/bin/opengl // Lancement du projet en utilisant OpenMP
- Lecture du fichier dubinski.tab : OK
- Affichage des galaxies : OK
- Calcule des positions : OK
- Utilisation de macro pour les puissances.
#define Pow2(_a) (_a*_a)
#define Pow3(_a) (_a*_a*_a)
- Pas de répétition pour les calculs des constantes.
#pragma omp parallel for
for (i = 0 ; i < NB_PARTICULE ; i++){
if (colorGalaxy(i)){
Particules[i].Galaxy = MILKYWAY;
} else {
Particules[i].Galaxy = ANDROMEDA;
}
}
#pragma omp parallel for
for ( index_loop = 0 ; index_loop < NB_PARTICULE ; index_loop++){
particule_calcul(index_loop);
}
Ces première optimisation on permit d'augmenter le nombre de FPS, mais on vite atteint leurs limites.