Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

336
Views
¿Qué definición de preprocesador proporciona -fopenmp?

Tengo un código que puede ejecutarse con (o sin) OpenMP; depende de cómo el usuario configure el archivo MAKE. Si quieren ejecutar OpenMP, simplemente agregan -fopenmp a CFLAGS y CXXFLAGS .

Estoy tratando de determinar qué macro de preprocesador puedo usar para saber cuándo -fopenmp está en vigor. El encabezado omp.h no parece muy interesante:

 $ cat /usr/lib/gcc/x86_64-linux-gnu/4.8/include/omp.h | grep define #define OMP_H 1 #define _LIBGOMP_OMP_LOCK_DEFINED 1 # define __GOMP_NOTHROW throw () # define __GOMP_NOTHROW __attribute__((__nothrow__))

Y no puedo hacer que el preprocesador ofrezca nada útil:

 $ cpp -dM -fopenmp </dev/null | grep -i omp #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1 #define __STDC_IEC_559_COMPLEX__ 1 $ cpp -dM -fopenmp </dev/null | grep -i version #define __GXX_ABI_VERSION 1002 #define __VERSION__ "4.8.2"

¿Qué definición de preprocesador proporciona -fopenmp ?


Esto es similar a ¿Cómo saber si OpenMP está funcionando? Pero estoy interesado en el tiempo de compilación, y no en el tiempo de ejecución o posterior a la compilación.

Nota : este proyecto no usa Boost, no usa Autotools y no usa Cmake. Solo usa un archivo MAKE.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Su grep era demasiado específico, debería haber buscado "openmp".

O más bien, diferenciar cpp -dM -fopenmp </dev/null y cpp -dM </dev/null produce una sola diferencia:

 #define _OPENMP 201107

Que debería ser exactamente lo que estás buscando.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!