Configuración de "configurar" para openMP en R
Tengo un paquete R que se acelera fácilmente usando OpenMP. Si su compilador lo admite, obtendrá la victoria, si no lo hace, los pragmas se ignorarán y obtendrá un núcleo.
Mi problema es cómo lograr que el sistema de compilación del paquete use las opciones y bibliotecas correctas del compilador. Actualmente tengo:
PKG_CPPFLAGS=-fopenmp
PKG_LIBS=-fopenmp
hardcoded en src / Makevars en mi máquina, y esto lo construye con soporte OpenMP. Pero produce una advertencia sobre las marcas del compilador no estándar en la verificación, y probablemente fallará en una máquina sin capacidades de OpenMP.
La solución parece ser usar configure y autoconf. Hay alguna información por aquí:
http: //cran.r-project.org/doc/manuals/R-exts.html#Using-Makevar
incluyendo un ejemplo complejo para compilar en la funcionalidad odbc. Pero no puedo ver cómo comenzar a ajustar eso para verificar openmp y libgomp.
Ninguno de los paquetes R que he visto en esa charla sobre el uso de openMP parece tener esto configurado tampoco.
Entonces alguien tiene un tutorial para configurar un paquete R con OpenMP?
[EDITAR
Puede que haya resuelto esto ahora. Tengo un script configure.ac y un Makevars.in con sustituciones @ FOO @ para las opciones del compilador. Pero ahora no estoy seguro del flujo de trabajo. Lo es
Ejecute "autoconf configure.in> configure; chmod 755 configure" si cambio el archivo configure.in. Hacer una compilación del paquete.En la instalación del paquete, el sistema ejecuta ./configure para mí y crea Makevars a partir de Makevars.inPero para ser claros, "autoconf configure.in> configure" no se ejecuta en la instalación del paquete, es simplemente un proceso de desarrollador para crear el script de configuración quee distribuido - ¿amirite?