[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-06-03 Thread bartoldeman at users dot sourceforge dot net


--- Comment #19 from bartoldeman at users dot sourceforge dot net  
2009-06-04 04:03 ---
Thanks for all the work -- another text processing program which changes some
headers in big ASCII files (which is what inspired this bug) went from around
real0m2.026s
user0m1.764s
sys 0m0.148s
to around
real0m0.657s
user0m0.392s
sys 0m0.140s
It's hard to beat C or even Python here but it's certainly very good!


-- 


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



[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-05-26 Thread jvdelisle at gcc dot gnu dot org


--- Comment #17 from jvdelisle at gcc dot gnu dot org  2009-05-27 01:22 
---
Subject: Bug 37754

Author: jvdelisle
Date: Wed May 27 01:21:22 2009
New Revision: 147887

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=147887
Log:
2009-05-23  Jerry DeLisle  jvdeli...@gcc.gnu.org

Backport from mainline:
PR libfortran/37754
* io/write_float.def: Simplify format calculation.

2009-05-23  Francois-Xavier Coudert  fxcoud...@gcc.gnu.org

Backport from mainline:
PR fortran/22423
* io/transfer.c (read_block_direct): Avoid warning.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
PR libfortran/39667
* io/file_pos.c (st_rewind): Don't truncate or flush.
* io/intrinsics.c (fgetc): Flush if switching mode.
(fputc): Likewise.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
PR libfortran/39782
* io/transfer.c (data_transfer_init): Don't flush before seek.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
* io/io.h (is_preconnected): Remove prototype.
* io/unix.c (is_preconnected): Remove function.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
PR libfortran/38668
* io/transfer.c (finalize_transfer): Don't flush for advance='no'.

2009-05-23 Danny Smith  dannysm...@clear.net.nz

Backport from mainline:
* io/write.c (itoa) : Rename back to gfc_itoa.
(write_i): Adjust call to write_decimal.
(write_integer):  Use gfc_itoa.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
* io/io.h (move_pos_offset): Remove prototype.
* io/transfer.c (formatted_transfer_scalar_read): Use sseek
instead of move_pos_offset.
* io/unix.c (move_pos_offset): Remove.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
PR libfortran/39665 libfortran/39702 libfortran/39709
* io/io.h (st_parameter_dt): Revert aligned attribute from u.p.value.
* io/list_read.c (read_complex): Read directly into user pointer.
(read_real): Likewise.
(list_formatted_read_scalar): Update read_complex and read_real calls.
(nml_read_obj): Read directly into user pointer.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
PR libfortran/39665
* io/io.h (st_parameter_dt): Add aligned attribute to u.p.value.
* io/read.c (convert_real): Add note about alignment requirements.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
* io/open.c (already_open): Test for POSIX close return value.
* io/unit.c (close_unit_1): Likewise.
* io/unix.c (raw_close): Return 0 for success for preconnected units.

2009-05-23  Janne Blomqvist  j...@gcc.gnu.org

Backport from mainline:
* runtime/error.c (gfc_itoa): Move to io/write.c
(xtoa): Rename to gfc_xtoa.
* runtime/backtrace.c (show_backtrace): Call gfc_xtoa.
* libgfortran.h (gfc_itoa): Remove prototype.
(xtoa): Rename prototype to gfc_xtoa.
* io/list_read.c (nml_read_obj): Use size_t for string length.
* io/transfer.c (read_block_direct): Change nbytes arg from
pointer to value.
(unformatted_read): Minor cleanup, call read_block_directly properly.
(skip_record): Use ssize_t.
(next_record_w_unf): Avoid stell() call by calling sseek with SEEK_CUR.
(iolength_transfer): Make sure to multiply before cast.
* io/intrinsics.c (fgetc): Remove unnecessary variable.
* io/format.c (format_hash): Use gfc_charlen_type.
* io/write.c (itoa): Move from runtime/error.c:gfc_itoa, rename,
make static.
(write_i): Call with pointer to itoa.
(write_z): Call with pointer to gfc_xtoa.
(write_integer): Pointer to itoa.
(nml_write_obj): Type cleanup, don't call strlen in loop.

2009-05-23  H.J. Lu  hongjiu...@intel.com

Backport from mainline:
PR libgfortran/39664
* io/unix.c (raw_close): Don't close STDOUT_FILENO,
STDERR_FILENO nor STDIN_FILENO.

2009-05-23  David Edelsohn  edels...@gnu.org

Backport from mainline:
* io/io.h (struct stream): Rename truncate to trunc.
(struncate): Same.
* io/unix.c (raw_init): Rename truncate to trunc.
(buf_init): Same.
(open_internal): Same.

2009-05-23  Daniel Kraft  d...@domob.eu

Backport from mainline:
PR fortran/38654
* io/read.c (read_f): Reworked to speed up floating point parsing.
(convert_real): Use pointer-casting instead of memcpy and temporaries.

2009-05-23  Jerry DeLisle  jvdeli...@gcc.gnu.org

Backport from mainline:
PR libfortran/37754
* io/io.h (format_hash_entry): New structure for hash 

[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-05-26 Thread jvdelisle at gcc dot gnu dot org


--- Comment #18 from jvdelisle at gcc dot gnu dot org  2009-05-27 01:47 
---
Fixed on 4.4, closing


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-05-19 Thread jvdelisle at gcc dot gnu dot org


--- Comment #16 from jvdelisle at gcc dot gnu dot org  2009-05-20 00:16 
---
Subject: Bug 37754

Author: jvdelisle
Date: Wed May 20 00:16:38 2009
New Revision: 147725

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=147725
Log:
2009-05-19  Jerry DeLisle  jvdeli...@gcc.gnu.org

PR libfortran/37754
* io/write_float.def: Simplify format calculation.

Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/io/write_float.def


-- 


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



[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


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



[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-04-05 Thread jvdelisle at gcc dot gnu dot org


--- Comment #15 from jvdelisle at gcc dot gnu dot org  2009-04-05 22:35 
---
Fixed on 4.5, good for 4.4 after some main line testing/exercise.


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.4/4.5 Regression] READ   |[4.4 Regression] READ I/O
   |I/O Performance regression  |Performance regression from
   |from 4.3 to 4.4/4.5 |4.3 to 4.4/4.5


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