This is the mail archive of the gcc-help@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]

RE: g++ 3.3 I/O Performance


On Mon, 2003-12-15 at 22:19, lrtaylor@micron.com wrote:
> Which version of GCC are you using (that is, 3.3.0, 3.3.1 or 3.3.2)?  From what I understand, there was a bug report for that and it was supposed to have been fixed in 3.3.2, or is slated to be fixed soon.  It had to do with the I/O implementation calling a slow system function (something like snprintf or something).  Perhaps someone knows better than I, but I know it's definitely not fixed in 3.3.1 or earlier.

Hmm, I can't make it tell me more than 3.3 (unless the dumpspec gives
something that I don't understand). Should I conclude from this that
it's 3.3.0 ?

Cheers,
				Torsten

[treuss]asn1tools>g++-3.3 --version
g++-3.3 (GCC) 3.3 (Debian)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

[treuss]asn1tools>gcc-3.3 --version
gcc-3.3 (GCC) 3.3 (Debian)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

[treuss]asn1tools>dpkg --list | grep g++-3.3
ii  g++-3.3        3.3-1.bunk.2   The GNU C++ compiler
[treuss]asn1tools>g++-3.3 -dumpversion
3.3
[treuss]asn1tools>gcc-3.3 -dumpversion
3.3
[treuss]asn1tools>g++-3.3 -dumpspecs  
*asm:
%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}

*asm_debug:
%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}

*asm_final:
%|

*asm_options:
%a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}

*invoke_as:
%{!S:-o %{|!pipe:%g.s} |
 as %(asm_options) %{!pipe:%g.s} %A }

*cpp:
%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}

*cpp_options:
%(cpp_unique_options) %1 %{m*} %{std*} %{ansi} %{W*&pedantic*} %{w}
%{f*} %{O*} %{undef}

*cpp_debug_options:
%{d*}

*cpp_unique_options:
%{C:%{!E:%eGNU C does not support -C without using -E}} %{CC:%{!E:%eGNU
C does not support -CC without using -E}} %{!Q:-quiet} %{nostdinc*} %{C}
%{CC} %{v} %{I*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD
%{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*}
%{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}} %{!no-gcc:-D__GNUC__=%v1
-D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3}
%{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs} %{remap}
%{g3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{E|M|MM:%W{o*}}

*trad_capable_cpp:
cc1 -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp}

*cc1:
%(cc1_cpu) %{profile:-p}

*cc1_options:
%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are
incompatible}} %1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*}
-auxbase%{c|S:%{o*:-strip %*}%{!o*: %b}}%{!c:%{!S: %b}} %{g*} %{O*}
%{W*&pedantic*} %{w} %{std*} %{ansi} %{v:-version} %{pg:-p} %{p} %{f*}
%{undef} %{Qn:-fno-ident} %{--help:--help}
%{--target-help:--target-help} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o
%b.s}}} %{fsyntax-only:-o %j} %{-param*}

*cc1plus:


*link_gcc_c_sequence:
%G %L %G

*endfile:
%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s

*link:
%{!static:--eh-frame-hdr} -m elf_i386 %{shared:-shared}   %{!shared:    
%{!ibcs:       %{!static:   %{rdynamic:-export-dynamic}    
%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}}      
%{static:-static}}}

*lib:
%{pthread:-lpthread}    %{shared:-lc}    %{!shared:%{mieee-fp:-lieee}
%{profile:-lc_p}%{!profile:-lc}}

*libgcc:
%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc
-lgcc_eh}%{shared-libgcc:-lgcc_s%M
-lgcc}}%{shared:%{shared-libgcc:-lgcc_s%M}%{!shared-libgcc:-lgcc}}}}

*startfile:
%{!shared:      %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s}                  
%{!p:%{profile:gcrt1.o%s}                     
%{!profile:crt1.o%s}}}}    crti.o%s %{static:crtbeginT.o%s}  
%{!static:%{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}}

*switches_need_spaces:


*predefines:


*cross_compile:
0

*version:
3.3

*multilib:
. ;

*multilib_defaults:


*multilib_extra:


*multilib_matches:


*multilib_exclusions:


*multilib_options:


*linker:
collect2

*link_libgcc:
%D

*md_exec_prefix:


*md_startfile_prefix:


*md_startfile_prefix_1:


*startfile_prefix_spec:


*cc1_cpu:
%{!mcpu*: %{m386:-mcpu=i386 %n`-m386' is deprecated. Use `-march=i386'
or `-mcpu=i386' instead.
} %{m486:-mcpu=i486 %n`-m486' is deprecated. Use `-march=i486' or
`-mcpu=i486' instead.
} %{mpentium:-mcpu=pentium %n`-mpentium' is deprecated. Use
`-march=pentium' or `-mcpu=pentium' instead.
} %{mpentiumpro:-mcpu=pentiumpro %n`-mpentiumpro' is deprecated. Use
`-march=pentiumpro' or `-mcpu=pentiumpro' instead.
}} %{mintel-syntax:-masm=intel %n`-mintel-syntax' is deprecated. Use
`-masm=intel' instead.
} %{mno-intel-syntax:-masm=att %n`-mno-intel-syntax' is deprecated. Use
`-masm=att' instead.
}

*link_command:
%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:    %(linker) %l %X %{o*} %{A}
%{d} %{e*} %{m} %{N} %{n} %{r} %{s} %{t}    %{u*} %{x} %{z} %{Z}
%{!A:%{!nostdlib:%{!nostartfiles:%S}}}    %{static:} %{L*}
%(link_libgcc) %o
%{!nostdlib:%{!nodefaultlibs:%(link_gcc_c_sequence)}}   
%{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} }}}}}}




> Cheers,
> Lyle
> 
> -----Original Message-----
> From: gcc-help-owner@gcc.gnu.org [mailto:gcc-help-owner@gcc.gnu.org]On
> Behalf Of Torsten Reuss
> Sent: Monday, December 15, 2003 2:08 PM
> To: gcc-help@gcc.gnu.org
> Subject: g++ 3.3 I/O Performance
> 
> 
> Hi,
> 
> I'm wondering if anybody can help me on why g++-3.3 is about 80% slower
> than g++-2.95.4 for an I/O intensive program I'm working on.
> 
> Now, before I go into the details, that's 80% slower with a call to
> ios::sync_with_stdio(false) inserted already. Without that it was 5
> times slower.
> 


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