pgf90: mpich-1 and flush()

I am using the subroutine flush(unitnumber) in Fortran90 to print out stepwise output from an iterative computation to a file. It works fine on a single CPU - however, when I use MPI (mpich-1) and multiple CPUs, the output to the file is delayed so that I don’t see the output every iteration. It seems to me as if the flush() call is ignored and the output is written once the buffer is full. Strange thing: it works fine with gfortran and mpich-2.

Can somebody help me? Thanks a lot…