J'ai travaillé avec un code multipôle rapide dans Fortran. C'est une boîte noire pour moi, et j'ai eu une certaine étrangeté en la compilant sur mon mac. J'utilise la version 11.1 du compilateur, j'ai un MacBook Pro exécutant un processeur Intel Core 2 Duo de 2,5 GHz sur Snow Leopard.Résultat incorrect avec le compilateur Intel Fortran sur Mac, mais sous Linux
Le code s'exécute correctement lorsque j'ai défini l'indicateur d'optimisation sur -O0, mais échoue lorsque j'utilise -O2 ou -O3. Ce qui est bizarre, c'est que le code fonctionne bien sur une machine Linux, au moins avec le drapeau -O2 par défaut.
Quelqu'un at-il des idées sur ce qui pourrait causer le problème? Ça doit être quelque chose avec la vectorisation.
Utilisez-vous exactement la même version d'ifort sous Linux? En tout cas "... une démonstration convaincante d'exactitude est impossible tant que le mécanisme est considéré comme une boîte noire, ..." (c) Edsger Wybe Dijkstra – Wildcat
Je vais devoir vérifier (c'est sur un ordinateur que je ne fais pas avoir accès à pour le moment), j'en doute cependant. – Patrick
Cela fonctionne également très bien avec le compilateur Lahey sur Windows. – Patrick