This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libfortran/21820] Really, really, horrible IO performance


------- Additional Comments From sgk at troutmask dot apl dot washington dot edu  2005-05-30 15:15 -------
Subject: Re:  Really, really, horrible IO performance

On Mon, May 30, 2005 at 03:00:41PM -0000, pinskia at gcc dot gnu dot org wrote:
> 
> > Note, the use of O_TRUNC on replacing a file should 
> > not hurt performance on other OS's.
> 
> On powerpc-darwin I am using HFS+.
> Hmm, I think I should drag my firewire drive out and try it on the
> UFS partition.
> 

A little more investigate shows that this may be a mmap problem.

If foo.dat does not exist
   ktrace ./z
   kdump -f ktrace.out | grep mmap | wc -l 
   4

   If foo.dat exists, then I see
   ktrace ./z
   kdump -f ktrace.out | grep mmap | wc -l
   246054

In looking at the ktrace, I see a bunch of segments like

 95157 z        CALL  mmap(0,0x2000,0x3,0x1,0x3,0,0,0)
 95157 z        RET   mmap 1208418304/0x48070000
 95157 z        CALL  munmap(0x48070000,0x2000)
 95157 z        RET   munmap 0
 95157 z        CALL  mmap(0,0x2000,0x3,0x1,0x3,0,0,0)
 95157 z        RET   mmap 1208418304/0x48070000
 95157 z        CALL  munmap(0x48070000,0x2000)
 95157 z        RET   munmap 0
 95157 z        CALL  mmap(0,0x2000,0x3,0x1,0x3,0,0,0)
 95157 z        RET   mmap 1208418304/0x48070000
 95157 z        Events dropped.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21820


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]