Operand conversion optimization
First Claim
1. A method comprising:
- receiving a series of operations, an operand of the series of operations being converted from a first format to a second format prior to performing a first operation of the series of operations, a result of the series of operations being converted from the second format to the first format after performing a second operation of the series of operations;
determining the origin of any operands of the series of operations being converted from the first format to the second format; and
if the origin of any operand being converted from the first format to a second format is a conversion from the second format to the first format, then eliminating the redundant conversions from the second format to the first format and from the first format to the second format.
1 Assignment
0 Petitions
Accused Products
Abstract
According to the invention, optimization of an application by elimination of redundant operand conversions is disclosed. According to one embodiment, the optimization comprises receiving an application that includes one or more operations, with one or more operands of the operations being converted from a first format to a second format before performing an operation; determining the origin of the one or more operands that are converted from the first format to the second format; and if the origin of any of the one or more operands that are converted from the first format to a second format is a conversion from the second format to the first format, then eliminating the redundant conversion from the second format to the first format and from the first format to the second format.
49 Citations
30 Claims
-
1. A method comprising:
-
receiving a series of operations, an operand of the series of operations being converted from a first format to a second format prior to performing a first operation of the series of operations, a result of the series of operations being converted from the second format to the first format after performing a second operation of the series of operations;
determining the origin of any operands of the series of operations being converted from the first format to the second format; and
if the origin of any operand being converted from the first format to a second format is a conversion from the second format to the first format, then eliminating the redundant conversions from the second format to the first format and from the first format to the second format. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving an application including one or more floating point calculations;
expanding the application by expanding the floating point calculations into a series of floating point operations on floating point operands, the floating point operands being converted from a packed format to an unpacked format prior to the performance of a floating point operation of the series of floating point operations, the result of a floating point operation of the series of floating point operations being converted from the unpacked format to the packed format;
determining the origin of the floating point operands; and
if the origin of any of the floating point operands is a conversion from the unpacked format to the packed format, then eliminating the redundant conversions of the operand from the unpacked format to the packed format and from the packed format to the unpacked format. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A machine-readable medium having stored thereon data representing sequences of instructions that, when executed by a processor, cause the processor to perform operations comprising:
-
receiving a series of operations, an operand of the series of operations being converted from a first format to a second format prior to performing a first operation of the series of operations, a result of the series of operations being converted from the second format to the first format after performing a second operation of the series of operations;
determining the origin of any operands of the series of operations being converted from the first format to the second format; and
if the origin of any operand being converted from the first format to a second format is a conversion from the second format to the first format, then eliminating the redundant conversions from the second format to the first format and from the first format to the second format. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A machine-readable medium having stored thereon data representing sequences of instructions that, when executed by a processor, cause the processor to perform operations comprising:
-
receiving an application including one or more floating point calculations;
expanding the application by expanding the floating point calculations into a series of floating point operations on floating point operands, the floating point operands being converted from a packed format to an unpacked format prior to the performance of a floating point operation of the series of floating point operations, the result of a floating point operation of the series of floating point operations being converted from the unpacked format to the packed format;
determining the origin of the floating point operands; and
if the origin of any of the floating point operands is a conversion from the unpacked format to the packed format, then eliminating the redundant conversions of the operand from the unpacked format to the packed format and from the packed format to the unpacked format. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
Specification