26.11.2012 Views

Compiler Usage Guidelines for 64-Bit Operating Systems on AMD64 ...

Compiler Usage Guidelines for 64-Bit Operating Systems on AMD64 ...

Compiler Usage Guidelines for 64-Bit Operating Systems on AMD64 ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<str<strong>on</strong>g>Compiler</str<strong>on</strong>g> <str<strong>on</strong>g>Usage</str<strong>on</strong>g> <str<strong>on</strong>g>Guidelines</str<strong>on</strong>g> <str<strong>on</strong>g>for</str<strong>on</strong>g> AMD<str<strong>on</strong>g>64</str<strong>on</strong>g> Plat<str<strong>on</strong>g>for</str<strong>on</strong>g>ms<br />

4 C<strong>on</strong>tents<br />

32035 Rev. 3.22 November 2007<br />

2.6 <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (32-bit) <str<strong>on</strong>g>for</str<strong>on</strong>g> Sun Solaris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18<br />

2.6.1 Sun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18<br />

Chapter 3 Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance-Centric <str<strong>on</strong>g>Compiler</str<strong>on</strong>g> Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19<br />

3.1 PGI <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (32- and <str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Linux ® and Microsoft ® Windows ® . . . . . . . . .19<br />

3.1.1 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19<br />

3.1.2 General Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20<br />

3.1.3 Optimizati<strong>on</strong> Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20<br />

3.1.4 Linking with ACML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21<br />

3.2 GCC <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Linux® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22<br />

3.2.1 Recommended <str<strong>on</strong>g>Compiler</str<strong>on</strong>g> Versi<strong>on</strong>s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22<br />

3.2.2 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23<br />

3.2.3 Generic Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23<br />

3.2.4 Other Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24<br />

3.3 Intel <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Linux ® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25<br />

3.3.1 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25<br />

3.3.2 Generic Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25<br />

3.3.3 Other Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25<br />

3.4 PathScale <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Linux ® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26<br />

3.4.1 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26<br />

3.4.2 Generic Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26<br />

3.4.3 Other Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26<br />

3.5 Intel <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Microsoft® Windows® . . . . . . . . . . . . . . . . . . . . . . . . .27<br />

3.5.1 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27<br />

3.5.2 Generic Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27<br />

3.5.3 Other Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27<br />

3.6 Microsoft® <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-<str<strong>on</strong>g>Bit</str<strong>on</strong>g>) <str<strong>on</strong>g>for</str<strong>on</strong>g> Microsoft® Windows® . . . . . . . . . . . . . . . . . . .28<br />

3.6.1 Invocati<strong>on</strong> Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28<br />

3.6.2 Generic Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28<br />

3.6.3 /favor Per<str<strong>on</strong>g>for</str<strong>on</strong>g>mance Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28<br />

3.7 Sun <str<strong>on</strong>g>Compiler</str<strong>on</strong>g>s (<str<strong>on</strong>g>64</str<strong>on</strong>g>-bit) <str<strong>on</strong>g>for</str<strong>on</strong>g> Solaris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!