This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Gfortran vs Ifort when using MPI
- From: "Johan Seland" <johan dot seland at gmail dot com>
- To: fortran at gcc dot gnu dot org
- Date: Tue, 8 Jul 2008 15:18:49 +0200
- Subject: Gfortran vs Ifort when using MPI
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:mime-version:content-type:content-transfer-encoding :content-disposition; bh=0agoS3s8rCNYUnpHVtWRvoe80M6KHUsfIiCwZtILt4Y=; b=pqkUfWtS+rtxiktxcml5z4PJPd6wEYOfpqoQR9n/Mjb8Bze2V+ulkjabHBtDKHdDg8 fyhiwcOW3b/2ntKzuXVRBHnfQbp4qVOD60x60HPCLEiHuXpQcPOHF5wabbEV3OwMU0ri dfOzJKekUmSXAXKRyeBCvhTY2NYx2e7XXY1vk=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition; b=C7NHB3g4ef+xjLa0UkDakULRt2FUUQAKog1yT3OjVe/ji0T0wZylIsXJQc+PLqTBuF 21yS1btYbY31dgcvHlXlM+H14wEEBQktQqV+nQld+bnM7RPXIaHLxn04MrCZXdgviKum av3OJnkX9bbgLyB+oIw5pIDAUysOQySXcsd0s=
Hello.
I am in the process of porting an existing 3D Navier-Stokes simulator
to utilize CUDA on GPUs. The existing simulator is written in F90 and
relies heavily on MPI.
Calling CUDA from gfortran straightforward, and we are making good
progress on the port itself, which is not the topic of my post. (FYI,
we will keep the existing MPI communication to split computations
between multiple GPUs.)
However, the original simulator was developed using Intel Fortran, and
we are experiencing huge (50x-100x) slowdowns when compiling the
simulator using gfortran-4.2 instead of Ifort. This is on a Core 2
Quad shared memory computer, and MPICH (1.2.7) is compiled with either
gfortran or ifort in shared memory mode.
I think I have used the right compiler options (-O3 -ffast-math
-funroll-all-loops), so I don't think that is the culprit?
The simulator is fully explicit and does not rely on BLAS/iMKL, so I
don't think ifort is getting an edge there either.
Is there any known reason for this extreme difference? I will be able
to spend some time on tracking this one down, but I need a pointer in
the right direction.
I have not been able to compile MPICH using gfortran-4.3, but this
could probably be done if it could eliminate some causes.
--
Regards Johan Seland