Browse Prior Art Database

Automated Compiler Option Selection

IP.com Disclosure Number: IPCOM000112690D
Original Publication Date: 1994-Jun-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 59K

Publishing Venue

IBM

Related People

Reysa, J: AUTHOR [+4]

Abstract

Disclosed is an automated tool which helps users select compiler options that optimize their program's execution-time performance. The tool queries the user about a program's characteristics. Based on the responses, this rule-based tool creates compiler command line suggestions. By concentrating on options which have historically shown the best gains, this tool provides users a quick way to improve their code without the burden of understanding the numerous available options.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Automated Compiler Option Selection

      Disclosed is an automated tool which helps users select
compiler options that optimize their program's execution-time
performance.  The tool queries the user about a program's
characteristics.  Based on the responses, this rule-based tool
creates compiler command line suggestions.  By concentrating on
options which have historically shown the best gains, this tool
provides users a quick way to improve their code without the burden
of understanding the numerous available options.

      In the absence of user options, compilers often make
conservative choices with respect to performance.  However, most
compilers allow users to provide three types of information via
options which may improve the speed of the compiled code.  One type
specifies acceptable bounds for "non-default" results.  An option
might allow a compiler to promote all program-specified
single-precision arithmetic to double-precision arithmetic.  This
user-specified deviation often allows faster execution while
providing mathematically equivalent answers which are acceptable to
the user.  A second type of option requests the compiler to attempt
transformations which may not benefit a wide range of applications
and therefore are not worthy of being the default case for
compilation time reasons.  However, the user may want to try the
transformation if it will likely improve his program.  The third
option type allows a user to specify certain characteristics of the
program an...