From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3665 invoked by alias); 4 Jun 2005 17:50:19 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 3644 invoked by uid 48); 4 Jun 2005 17:50:14 -0000 Date: Sat, 04 Jun 2005 17:50:00 -0000 Message-ID: <20050604175013.3643.qmail@sourceware.org> From: "jblomqvi at cc dot hut dot fi" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20040703014226.16339.rth@gcc.gnu.org> References: <20040703014226.16339.rth@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug libfortran/16339] Unformatted i/o on large arrays inefficient X-Bugzilla-Reason: CC X-SW-Source: 2005-06/txt/msg00454.txt.bz2 List-Id: ------- Additional Comments From jblomqvi at cc dot hut dot fi 2005-06-04 17:50 ------- It seems that with current mainline, while gfortran still loses to g77 and ifort, the difference isn't that large. Executing via strace shows that writes are nowadays done in 8k blocks, which probably explains the change. Here are the total times (removing the output file between each invocation): ifort 8.0: 0,109 g77 3.3: 1,349 gfortran 4.1 20050604: 1,458 Blocksizes in bytes are: ifort 8.0: 262144 g77 3.3: 4096 gfortran 4.1 20050604: 8192 Gfortran is the only one which uses mmap. Also, we can see that ifort uses a _huge_ blocksize, which probably explains why it's over 10 times faster. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16339