On Aug 28, 7:19 pm, "Stephen Hartke" <[EMAIL PROTECTED]> wrote:
> My understanding is that nauty is not intended to be built into a library,
> and hence this is why -fPIC is not used.  Is there any reason to not use
> -fPIC for a statically linked executable (as nauty is normally used)?

Code compiled with -fPIC has a performance penalty.  I don't remember
all the sources of the penalty, but part of it is that access to
global variables becomes more expensive, and one extra register is
used (this is quite painful on 32-bit x86, which has only 6 or 7
available general-purpose registers).

You could try compiling nauty with and without -fPIC on 32-bit x86 and
see how bad the performance loss is.  (If the bottlenecks in the code
use a small number of registers and don't use global variables, then
the performance loss could be negligible.)

Carl

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to