Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion gfortran write performance
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Gordon Sande  
View profile  
 More options Aug 29 2012, 3:50 pm
Newsgroups: comp.lang.fortran
From: Gordon Sande <Gordon.Sa...@gmail.com>
Date: Wed, 29 Aug 2012 16:50:02 -0300
Local: Wed, Aug 29 2012 3:50 pm
Subject: Re: gfortran write performance
On 2012-08-29 16:34:46 -0300, tho...@antispam.ham said:

> I have a program that was originally developed on a 32-bit Windows XP
> machine using CVF 6.6c.  Fairly simple.  Works fine.

> More recently, I ported that program to 64-bit Windows 7 using
> gfortran 4.6.1 (the TDM installation package).  If I remember
> correctly, the only change necessary to the source code was
> replacing all instances of FORM='BINARY' to ACCESS='STREAM' in
> the various OPEN statements.  Still works fine.

> Yesterday, it became necessary to run that program on a
> different 32-bit Windows XP machine.  I installed the 32-bit
> version of TDM's gfortran 4.6.1 package and compiled the more
> recent version of the source code there.  It compiled properly
> without any changes to the source code.  However, when running
> this executable, writes to disk using stream I/O are PAINFULLY
> slow.  Write speed was less than 300 kilobytes per second.  It
> took over two HOURS to create 12 files of 177 MB size.  It's
> not a problem with the disk.  Minutes earlier, Firefox had
> written 8 GB worth of downloaded files as fast as the ethernet
> transfer speeds would allow (multiple streams at 5 MB/sec).
> The disk has plenty of space available.

> Now that I'm aware of it, slow write performance is being seen
> in all other programs that I built using gfortran on 32-bit
> Windows XP.  It's only the programs that write big files that
> are noticeably slow, however.  Those that write on a few kilobytes
> don't write enough to notice the speed.

> Any ideas what could be causing such slow write performance?

There is often a major performance difference between

real :: x(100000)

write ( 11 ) ( x(i), i = 1, 100000 )

and just

write ( 11 ) x

as the intereaction with the runtime library is very different
on most systems. Rather different overhead on filling the
final buffer is quite common.

The same sort of issues could be going on internally in Win/XP
vrs Win/7 as well as in the Fortran runtime. It could be triggered
by differing block sizes on the two systems. Have you checked the
phase of the moon lately? ;-)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.