Linking is slow for large programs if the output file is stored on a network
disk (e.g. ClearCase). For a program of some tens of MB, linking takes several
minutes. The CPU utilization is also very low during long periods of time. If
the output is placed e.g. on /tmp, linking is several times faster.
It is a bit hard to supply a good test case, however any large C++ program
should give some insight.
I have also run 'strace' on 'ld' and noticed a large number of _llseek() and
write() calls for the output file. This dominates the number of system calls
after a while, since the input files seem to be cached. Many writes also
transfer a small amount of data.
--
Summary: Slow linking on network disks (no output buffering?)
Product: binutils
Version: 2.15
Status: NEW
Severity: normal
Priority: P2
Component: ld
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: fredrik dot huss at home dot se
CC: bug-binutils at gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://sources.redhat.com/bugzilla/show_bug.cgi?id=800
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
bug-binutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-binutils