This is the mail archive of the gcc@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: Register Pressure in Instruction Level Parallelism (fwd)


Daniel said

<<What isn't promising about it is that integer programming is a
technique for exact solutions to NP-complete problems.  Since these are
hard problems, exact solutions tend to be very computation-intensive.
GCC is slow enough as it is; integer programming based allocation is
exceptionally computation-intensive, especially for large or
pathological programs.
>>

Perhaps we will have to introduce the switch that was in the original 
graph coloring IBM compiler. The switch was called something like No_NP
and it told the compiler *not* to go into an exponential time algorithm
to find an optimal coloring of the graph in cases where a simple attempt
at coloring failed (without this switch they had cases of short programs
that took days to compile :-)

Of course machines are faster now, but exponential algorithms get out of
hand pretty quickly, even with Moore's law hard at work :-)


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