[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Strano comportamento di gfortran



On Mon, Dec 11, 2017 at 03:56:49PM +0100, Stefano Simonucci wrote:
> Salve a tutti.

Ciao!

> Ho compilato un programma in Fortran e in fase di esecuzione ho riscontrato
> con ps ux:
>
>
> USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
>
> stefano  14972  163  0.0 401644 18372 pts/3    Rl+  14:14 148:12 ./prog_LPDA
>
>
> cioè il programma si comporta come se fosse parallelizzato a livello Open-MP
> con un consumo medio di CPU superiore al 160%.Eppure io non ho messo nessuna
> istruzione open-MP e l'ho compilato senza l'opzione -fopenmp.

Ma almeno va piu' veloce?? :-)

Scherzi a parte puoi provare con ldd a vedere se e' cosi' (la libreria
dovrebbe  essere collegata  dinamicamente,  almeno se  ho capito  bene
quanto                           scritto                          qui:
https://gcc.gnu.org/onlinedocs/gfortran/OpenMP.html)

> Il comando preciso è
>
> gfortran -cpp -fbounds-check -Ofast -lgsl -llapack -lblas -o prog_LPDA
> prog_LPDA.f90 BDGsub_fpic.o
>

Devi anche  vedere come  sono implementate  le routine  delle librerie
dietro le interfaccie,  per esempio le openblas usano  i thread. Anche
le ATLAS. Entrambe espongono le API delle BLAS.

https://stackoverflow.com/questions/30891296/are-the-lapack-routines-thread-safe/30893141#30893141

Non ho alcuna esperienza recente col  fortran (o col calcolo se e' per
questo :-)), spero di essere stato utile comunque.

Ciao!
C.


--
To iterate is human; to recurse, divine.


Reply to: