I am trying different kinds of parallelization using OpenMP. As a result I have several lines of #pragma omp parallel for in my code which I (un-)comment alternating. Is there a way to make these lines conditional with something like the following, not working code?
   define OMPflag 1 
   #if OMPFlag pragma omp parallel for
   for ...
                C99 has the _Pragma keyword that allows you to place what otherwise would be #pragma inside macros. Something like
#define OMP_PARA_INTERNAL _Pragma("omp parallel for")
#if [your favorite condition]
#define OMP_FOR OMP_PARA_INTERNAL for
#else
#define OMP_FOR for
#endif
and then in your code
OMP_FOR (unsigned i; i < n; ++i) {
  ...
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With