Bug 532763 - qmc2 compilation takes eternity
Summary: qmc2 compilation takes eternity
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: gcc
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-11-03 18:17 UTC by Julian Sikorski
Modified: 2010-02-11 16:50 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2010-02-11 16:50:27 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
GNU Compiler Collection 41371 0 None None None Never

Description Julian Sikorski 2009-11-03 18:17:38 UTC
Description of problem:
QMC2 build takes ages. On F-11 my machine needed roughly 3,5 minutes to do a mockbuild. On F-12, after 7.5 minutes the process was not even halfway through. RPM Fusion buildsys took 1286 minutes to compile this simple program:
http://buildsys.rpmfusion.org/build-status/job.psp?uid=5392
Memory usage is within normal limits.

Version-Release number of selected component (if applicable):
4.4.2-7

How reproducible:
always

Steps to Reproduce:
1. Try to rebuild the source RPM in mock for F-12
  
Actual results:
Build process takes ages

Expected results:
Build process takes several minutes tops.

Additional info:
http://belegdol.fedorapeople.org/qmc2-0.2-0.16.b12.fc11.src.rpm

Comment 1 Jakub Jelinek 2009-11-06 09:02:02 UTC
Testcase added to http://gcc.gnu.org/PR41371, Alex Oliva will hopefully have a look soon.  Short term workaround is to compile with -fno-var-tracking-assignments.

Comment 2 Bug Zapper 2009-11-16 15:00:41 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 3 Julian Sikorski 2009-11-16 15:41:43 UTC
In case anyone is wondering, I can confirm that adding -fno-var-tracking-assignments to CXXFLAGS brings the compilation back to reasonable values - it took 8 minutes and 28 seconds this time.

Comment 4 Tom Lane 2010-01-02 15:49:34 UTC
I have found that -fvar-tracking-assignments breaks mysql on s390: it's not a matter of compilation time, it's that the resulting executable fails its regression tests unless I add  -fno-var-tracking-assignments.  Is this likely to be the same issue described here, or should I file a new bug?  (Unfortunately I do not have a good test case to submit, because I haven't localized the bug at all.)

Comment 5 Jakub Jelinek 2010-01-02 16:03:05 UTC
That's certainly unrelated, so please do file a new bug.  gcc shouldn't generate different code between -fvar-tracking-assignments and -fno-var-tracking-assignments (not even between -g and -g0), any such case is considered a bug, so you could just strip -fvar-tracking-assignments and -fno-var-tracking-assignments generated object files and compare them, those that differ should be reported with preprocessed source and all gcc command line options.

Comment 6 Tom Lane 2010-01-02 21:12:38 UTC
Oh, scratch that ... further experimentation shows that the same test sometimes passes and sometimes doesn't with identical compilation options.  So the use of -fno-var-tracking-assignments probably didn't have anything to do with it.  Sorry for the noise.

Comment 7 Jakub Jelinek 2010-01-13 09:03:33 UTC
Please try http://kojipkgs.fedoraproject.org/packages/gcc/4.4.2/24.fc12/

Comment 8 Julian Sikorski 2010-01-19 18:32:09 UTC
Sorry for the late reply, but this needinfo has completely escaped my attention. Anyway, the results are as follows. Building qmc2-0.2-0.17.b13.fc12.src.rpm on this machine takes:
- 10 min. 3 s; when using gcc-4.4.2-20 and -fno-var-tracking-assignments
- 30 min. 23 s; when using gcc-4.4.2-24 w/o -fno-var-tracking-assignments
In both of these cases the test was done in mock, with ccache and root_cache plugins disabled. RPMs for mock were all available locally, nothing had to be downloaded.
Real-time build.log monitoring has revealed that the compiler needed most of the time to compile qrc_qmc2.cpp.

Comment 9 Jakub Jelinek 2010-02-11 16:50:27 UTC
gcc-4.4.2-4.fc12 errata has been released.


Note You need to log in before you can comment on or make changes to this bug.