- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi,
I'm trying to parallelize 3 nested loops with OpenMP. I use
the collapse(3) statement. The code works, but the collapse
statement has no effect. If the size of the outermost loop is 1,
the program runs with only one thread.
Is this a bug? Is there a way to get it working with the collapse
statement? Merging the loops 'by-hand' is unfortunately no option.
Cheers, Fabian
I'm trying to parallelize 3 nested loops with OpenMP. I use
the collapse(3) statement. The code works, but the collapse
statement has no effect. If the size of the outermost loop is 1,
the program runs with only one thread.
Is this a bug? Is there a way to get it working with the collapse
statement? Merging the loops 'by-hand' is unfortunately no option.
Cheers, Fabian
- Balises:
- Intel® Fortran Compiler
Lien copié
2 Réponses
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
The current compilers have always warned me when they ignored collapse. If an outer loop of length 1 were suitable for collapse(), I don't see why you wouldn't remove it yourself.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Quoting - tim18
The current compilers have always warned me when they ignored collapse. If an outer loop of length 1 were suitable for collapse(), I don't see why you wouldn't remove it yourself.
I don't get any warnings. Even if the outer loop has a length >1, the collapse does not produce the expected speedup. The collapse feature would make life much easier and I just don't understand why it's not working.

Répondre
Options du sujet
- S'abonner au fil RSS
- Marquer le sujet comme nouveau
- Marquer le sujet comme lu
- Placer ce Sujet en tête de liste pour l'utilisateur actuel
- Marquer
- S'abonner
- Page imprimable