User account creation filtered due to spam.

Bug 30588 - gcj compiles large jars much slower
Summary: gcj compiles large jars much slower
Status: RESOLVED WONTFIX
Alias: None
Product: gcc
Classification: Unclassified
Component: tree-optimization (show other bugs)
Version: 4.3.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords: alias, compile-time-hog
Depends on:
Blocks:
 
Reported: 2007-01-25 16:30 UTC by Mark Wielaard
Modified: 2016-10-03 06:08 UTC (History)
4 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Wielaard 2007-01-25 16:30:34 UTC
An example from frysk:

$ /usr/bin/gcj -v
Using built-in specs.
Reading specs from /usr/lib/gcc/x86_64-redhat-linux/4.1.1/libgcj.spec
rename spec startfile to startfileorig
rename spec lib to liborig
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=x86_64-redhat-linux
Thread model: posix
gcc version 4.1.1 20070105 (Red Hat 4.1.1-51)

$ /home/mark/src/gcc-install/bin/gcj -v
Using built-in specs.
Reading specs from /home/mark/src/gcc-install/lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../libgcj.spec
rename spec startfile to startfileorig
rename spec lib to liborig
Target: x86_64-unknown-linux-gnu
Configured with: /home/mark/src/gcc/configure --prefix=/home/mark/src/gcc-install --enable-java-awt=gtk --disable-bootstrap --disable-checking --enable-plugin --enable-languages=c,c++,java
Thread model: posix
gcc version 4.3.0 20070125 (experimental)


$ time /usr/bin/gcj -I../../frysk/frysk-imports -I. -Igetopt.jar -Ijunit.jar -Werror -Wall -fPIC  -g -O -fjni -c antlr.jar

real    0m36.455s
user    0m35.666s
sys     0m0.644s

$ time /home/mark/src/gcc-install/bin/gcj -I../../frysk/frysk-imports -I. -Igetopt.jar -Ijunit.jar -Werror -Wall -fPIC  -g -O -fjni -c antlr.jar

real    0m51.691s
user    0m50.643s
sys     0m0.760s

Compiling with -ftime-report gives a hint where this might come from:
4.3 (trunk):
tree PTA              :   3.80 ( 8%) usr   0.02 ( 1%) sys   3.79 ( 7%) wall   25485 kB ( 2%) ggc
tree alias analysis   :  10.41 (21%) usr   0.50 (21%) sys  10.83 (21%) wall  600226 kB (42%) ggc

With 4.1.1 it is:
tree PTA              :   5.80 (17%) usr   0.05 ( 3%) sys   5.54 (15%) wall   45994 kB ( 5%) ggc
tree alias analysis   :   1.48 ( 4%) usr   0.37 (21%) sys   1.90 ( 5%) wall   16749 kB ( 2%) ggc
Comment 1 Andrew Haley 2007-01-25 16:59:22 UTC
I'm guessing this is either because of more aggressive alalysis or perhaps we're now compiling unit-at-a-time.  In any case, I don't think "Java" is the correct component.
Comment 2 Steven Bosscher 2010-07-13 09:39:34 UTC
Alias analysis has had two rewrites since last time someone commented on this bug. Is this still a problem on the trunk?
Comment 3 Andrew Pinski 2016-10-03 06:08:51 UTC
No feedback for 6 years so closing as won't fix as GCJ has been removed too.