These are all different ways to say the same thing: these tasks are "data parallel" or can be executed independently because of inherent parallelism. In my personal opinion, I find the higher-order approach to be the most elegant. The syntax for openMP parallel for seems confusing to me because it uses syntax from a purely sequential loop.
username
Does an openMP parallel for only create as many "threads" as there are hardware threads on the system? For example if there were 8 hyperthreads on this system, would this work just like 8-wide SIMD
These are all different ways to say the same thing: these tasks are "data parallel" or can be executed independently because of inherent parallelism. In my personal opinion, I find the higher-order approach to be the most elegant. The syntax for openMP parallel for seems confusing to me because it uses syntax from a purely sequential loop.
Does an openMP parallel for only create as many "threads" as there are hardware threads on the system? For example if there were 8 hyperthreads on this system, would this work just like 8-wide SIMD