From: N8TM AT aol DOT com Subject: Re: Support for malign-double? 21 Aug 1998 20:30:00 -0700 Message-ID: <54f67881.35dd1485.cygnus.gnu-win32@aol.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit To: nakata AT csl DOT cl DOT nec DOT co DOT jp, gnu-win32 AT cygnus DOT com Cc: nakata AT ccm DOT cl DOT nec DOT co DOT jp In a message dated 8/20/98 4:13:18 PM Pacific Daylight Time, nakata AT csl DOT cl DOT nec DOT co DOT jp writes: > linux performance is > about 20% better for floating point intensive application. > You'd have to study harder than I'm willing to do to figure out which alignments are controlled by -malign-double, which are at the discretion of the OS or the math library, and which are controlled by the compiler in which version. It appears that linux-gnulibc1 aligns many local variables, including register spills, which cygwin32 does not. One of the effects I have observed is that -Os may be faster than -O2 on a P-Pro running certain code on cygwin32, where the two are about equal on a P2 on cygwin32, and -O2 may be faster on linux. My conclusion is that -O2 spills more registers, which are stored with unpredictable alignment in cygwin32. You must be running a P-Pro; data mis-alignment on the P-Pro can slow it down by a factor of 2 or 3 when there are L1 data cache misses, while I've never been able to slow the P2 down by more than 50% for data cache misses. But, since you mention 20%, that's a typical penalty on the P2 for failing to use the p2align feature of current egcs. That, however, is the same on linux or cygwin32, if you install the same compiler and gas on each. - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".