Bonjour,

J'essaie de paralléliser un programme en C qui fait appel à de nombreuses et volumineuses données que je vais chercher dans un fichier et transforme ensuite.

Il faut que ces grands tableaux soient accessibles de façon par tous les threads pour les lire mais seul un tableau sert à l'écriture des résultats à des endroits différents pour chaque thread.

Le problème est que ma section parallèle déclarée avec #pragma omp parallel ne contient pas les allocations des tableaux. Ce n'est pas sensé être un problème mais j'obtiens des erreurs de segmentation et des comportements étrange de mon programme.

Ma question est la suivante : Est ce nécessaire de déclarer une section parallèle qui englobe tout le pré-traitement de mes données pour que openmp sache correctement utiliser mes tableaux ?

Il est aussi probable qu'une erreur de programmation ce soit insinuée dans cette partie.

Merci d'avance.