En bon manuel Altix (altix_single_cpu_optimization http://wwwuser.gwdg.de/~parallel/parallelrechner/altix_documentation/altix_single_cpu_optimization.pdf) J'ai trouvé cette liste de pragma-conseils pour l'optimisation des compilateursPragmas SWP, ivdep, le soutien de prélecture dans divers compilateurs
#pragma ivdep // no aliasing
#pragma swp // try to software-pipeline
#pragma noswp // disable software-pipelining
#pragma loop count (NN) // hint for SWP
#pragma distribute point // split this large loop
#pragma unroll (n) // unroll n times
#pragma nounroll // do not unroll
#pragma prefetch a // prefetch array “a”
#pragma noprefetch c // do not prefetch array “c”
Quels compilateurs ne supporte ces pragmas? Et qu'implémente-t-elle les optimisations liées (la pipelining logicielle est l'une des optimisations les plus dures pour les processeurs à faible IP et à faible nombre d'enregistrements)?
Liste d'Altix ressemble à des pragmas de compilateur Intel – osgx