This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: OpenMP+gfortran performance extremely variable between dlopen's of libgomp
- From: Nick Maclaren <nmm1 at cus dot cam dot ac dot uk>
- To: gcc-help at gcc dot gnu dot org
- Date: Mon, 14 Jan 2008 08:33:47 +0000
- Subject: Re: OpenMP+gfortran performance extremely variable between dlopen's of libgomp
"Anand Patil" <anand.prabhakar.patil@gmail.com> writes:
>
> I find that the performance of my subroutines
> varies greatly if I reload libgomp, but if I rerun the subroutines
> several times for the same load of libgomp performance is fairly
> constant. Other information that may be relevant:
>
> - The number of threads stays the same (I have OMP_DYNAMIC=False).
> - The relative speedup from OpenMP (wall time / CPU time) stays
> relatively constant.
>
> I don't even know where to start looking for the source of this
> behavior. Any tips?
Almost certainly physical memory layout. If you have to ask, don't
bother trying to chase it down. The reason is that operating systems
people are unreasonably prejudiced (and have been for 40+ years)
against providing the relevant information (let alone control) to
applications programmers.
Most Linuces don't even provide access to the hardware performance
registers.
Regards,
Nick Maclaren.