This page describes problems encountered when porting code to Zen and when setting up codes to run using MPI.
Multiple processes simultaneously writing to the same file
Problems arise if multiple processes try to write to the same file at the same time. There may not be anything obviously wrong other than the code running slowly. The impact on performance can be significant so it is worth checking for this problem.
Passing a literal constant as a subroutine argument
Passing a literal constant to a subroutine, via the argument list, can cause a segmentation fault. The behaviour is compiler dependent, the following example gives a segmentation fault with version 9 of ifort but not with version 10.
program seg_fault_test
implicit none
call foo (2)
end program seg_fault_test
subroutine foo(x)
implicit none
integer :: x
if (x<2) x=2
end subroutine foo
--
DavidAcreman - 10 Mar 2008