Estoy tratando de averiguar qué versión de OpenMP está instalada en mi máquina. Es una caja Linux a la que estoy conectado usando ssh
.¿Puedo verificar qué versión de OpenMP he instalado?
Estoy usando gcc
para compilar usando -fopenmp
.
Estoy tratando de averiguar qué versión de OpenMP está instalada en mi máquina. Es una caja Linux a la que estoy conectado usando ssh
.¿Puedo verificar qué versión de OpenMP he instalado?
Estoy usando gcc
para compilar usando -fopenmp
.
con GCC, supongo que se debe buscar la versión del compilador
gcc -v
tal vez en combinación con la versión de libgomp
ls -ltr /usr/lib/libgomp.so.1*
por ejemplo,
-rw-r - r-- 1 root root 46652 2010-09-27 23:00 /usr/lib/libgomp.so.1.0.0
Dependiendo de su distribución esta podría dar más información:
dpkg --status libgomp
Ej:
Package: libgomp1
Status: install ok installed
Priority: optional
Section: libs
Installed-Size: 84
Maintainer: Ubuntu Core developers <[email protected]>
Architecture: i386
Source: gcc-4.5
Version: 4.5.1-7ubuntu2
Depends: gcc-4.5-base (= 4.5.1-7ubuntu2), libc6 (>= 2.6)
Description: GCC OpenMP (GOMP) support library
GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
in the GNU Compiler Collection.
Homepage: http://gcc.gnu.org/
Original-Maintainer: Debian GCC Maintainers <[email protected]>
En mi caso se confirma que la versión coincide con gcc
libgomp.so no está en ese camino para mí, ¿alguna idea de dónde podría estar? – lms
Agregue - ### a la invocación de gcc - como "gcc - ### a.c" - y busque dónde está recogiendo crtbegin.o y/o el directorio especificado con -L. Eso debería darle el camino hacia donde están las bibliotecas. Una vez que conozca la versión de gcc, puede verificar la documentación de gcc para ver qué versión de OpenMP es compatible o escribir un pequeño programa imprimiendo el valor de _OPENMP. El valor corresponde a la fecha de la especificación OpenMP compatible. – ejd
@codenoob: 'ldconfig -p | grep gomp' o de lo contrario instálelo (por ejemplo, 'apt-get install libgomp1') – sehe
Citando del GCC wiki page que contiene información sobre la especificación OpenMP:
Como de GCC 4.2, el compilador implementa la versión 2.5 de la especificación OpenMP , como de 4,4 que implementa la versión 3.0 y desde GCC 4.7 se admite la especificación OpenMP 3.1. GCC 4.9 soporta OpenMP 4.0 con las excepciones de seguimiento (a partir del 28/11/2013): las nuevas directrices 4.0 aún no están soportadas en Fortran y objetivo omp siempre se ejecutarán en el host
Es posible que desee echar un vistazo [aquí] (http://stackoverflow.com/help/how-to-answer). En particular _ "Se fomentan los enlaces a recursos externos, pero agregue contexto alrededor del enlace para que los demás usuarios tengan una idea de qué es y por qué está allí. Siempre cite la parte más relevante de un enlace importante, en caso de que el sitio objetivo es inalcanzable o está permanentemente fuera de línea. "_ – Massimiliano
Este es un documento oficial de gcc, creo que es relevante y responde la pregunta. Proporcioné algo de contexto, no sé qué más agregar que sea relevante y no redundante. El primer párrafo de ese enlace enumera el soporte para el estándar OpenMP que proporciona GCC (mencionado en mi comentario). No entiendo tu voto negativo. De lo contrario, ¿cómo publicaría la referencia al enlace?Es muy fácil copiar y pegar lo que pones. – wgodoy
El voto negativo fue para la respuesta de solo enlace, que SO desaconseja explícitamente. – Massimiliano
¿Quieres que el ¿Versión de especificación de OpenMP, o la versión de libgomp? – CharlesB
Posible duplicado de [Cómo comprobar la versión de OpenMP en Linux] (https://stackoverflow.com/questions/1304363/how-to-check-the-version-of-openmp-on-linux) – nbro