Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
135 words
A method for enhancing processor execution of a compilable high-level language, conditional code segment having at lest two associated conditional paths, said method comprising the steps of: (a) associating a different one of at least two probability compiler directives with each conditional path of said conditional code segment, each associated probability compiler directive being assigned an approximate probability for satisfying a test condition of the associated conditional path when said path is taken by a processor; and (b) compiling said conditional code segment, using a computer, into an assembled code segment according to the assigned probabilities of said probability compiler directives, said compiling including arranging said assembled code segment such that said conditional paths are placed in said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 2
Independent Claim
135 words
A method for enhancing processor execution of a compilable high-level language, conditional code segment having at lest two associated conditional paths, said method comprising the steps of: (a) associating a different one of at least two probability compiler directives with each conditional path of said conditional code segment, each associated probability compiler directive being assigned an approximate probability for satisfying a test condition of the associated conditional path when said path is taken by a processor; and (b) compiling said conditional code segment, using a computer, into an assembled code segment according to the assigned probabilities of said probability compiler directives, said compiling including arranging said assembled code segment such that said conditional paths are placed in said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 3
Dependent Claim
129 words
The method of claim 1, further comprising the steps of: (c) performance testing said assembled code segment of step (b); (d) simultaneous with said step (c), collecting for each conditional path compiled into said assembled code segment performance test data; (e) revising assigned probabilities of said probability compiler directives, said assigned probabilities being revised to reflect said performance test data collected in said step (d); and (f) re-compiling said conditional code segment with said revised assigned probabilities of step (e) into an enhanced assembled code segment, said enhanced assembled code segment being arranged according to the revised probabilities assigned to said probability compiler directives such that conditional branches are disposed within said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 4
Dependent Claim
17 words
The method of claim 2, further comprising the step of repeating steps (c)-(f) at least one time.
Claim 5
Dependent Claim
46 words
The method of claim 1, wherein said conditional code segment comprises one of an IF-THEN-ELSE statement of language PL/I, COBOL, PASCAL, or ALGOL, an IF-THEN-ELSIF-ELSE statement of language FORTRAN-78, a SWITCH-CASE statement of language C, a SELECT statement of PL/I and a CASE statement of PASCAL.
Claim 6
Dependent Claim
49 words
The method of claim 1, wherein said approximate probability indication of said step (a) assigned to each probability compiler directive comprises a floating point number having a value x, wherein 0.0<×<1.0, and wherein a summation of said floating-point numbers of said at least two probability compiler directives equals 1.0.
Claim 7
Dependent Claim
40 words
The method of claim 1, wherein said compiling step (b) includes arranging said assembled code segment such that said conditional paths are organized in said assembled code segment from most likely to be taken to least likely to be taken.
Claim 8
Dependent Claim
49 words
The method of claim 1, wherein said conditional code segment comprises an outer conditional code segment, said outer conditional code segment including at least one inner conditional code segment, and wherein said method further comprises the step of repeating steps (a) & (b) for each inner conditional code segment.
Claim 9
Dependent Claim
144 words
A programed computer system for enhancing processor execution of a compilable high-level language, conditional code segment having at least two associated conditional paths, said programmed computer system comprising: means for associating a different one of at least two probability compiler directives with each conditional path of said conditional code segment, each associated probability compiler directive being assigned an approximate probability for satisfying a test condition of the associated conditional path when said path is taken by a processor; and means for compiling said conditional code segment, using said programmed computer system, into an assembled code segment according to the assigned probabilities of said probability compiler directives, said means for compiling including means for arranging said assembled code segment such that said conditional paths are placed in said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 10
Dependent Claim
144 words
A programed computer system for enhancing processor execution of a compilable high-level language, conditional code segment having at least two associated conditional paths, said programmed computer system comprising: means for associating a different one of at least two probability compiler directives with each conditional path of said conditional code segment, each associated probability compiler directive being assigned an approximate probability for satisfying a test condition of the associated conditional path when said path is taken by a processor; and means for compiling said conditional code segment, using said programmed computer system, into an assembled code segment according to the assigned probabilities of said probability compiler directives, said means for compiling including means for arranging said assembled code segment such that said conditional paths are placed in said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 11
Dependent Claim
122 words
The programmed computer system of claim 8, further comprising: means for performance testing said assembled code segment; means for collecting for each conditional path compiled into said assembled code segment performance test data simultaneous with said performance testing; means for revising assigned probabilities of said probability compiler directives, said assigned probabilities being revised to reflect said collected performance test data; and means for re-compiling said conditional code segment with said revised assigned probabilities into an enhanced assembled code segment, said enhanced assembled code segment being arranged according to the revised probabilities assigned to said probability compiler directives such that conditional branches are disposed within said assembled code segment in a manner that results in a shortest possible execution time for said processor.
Claim 12
Dependent Claim
26 words
The programmed computer system of claim 9, further comprising means for repeating said performance testing, said collecting, said revising and said re-compiling at least one time.
Claim 13
Dependent Claim
48 words
The programmed computer system of claim 8, wherein said conditional code segment comprises one of an IF-THEN-ELSE statement of language PL/I, COBOL, PASCAL, or ALGOL, and IF-THEN-ELSIF-ELSE statement of language FORTRAN-78, a SWITCH-CASE statement of language C, a SELECT statement of PL/I and a CASE statement of PASCAL.
Claim 14
Dependent Claim
47 words
The programmed computer system of claim 8, wherein said approximate probability indication assigned to each probability compiler directive comprises a floating point number having a value x, wherein 0.0<×1.0, and wherein a summation of said floating-point numbers of said at least two probability compiler directives equals 1.0.
Claim 15
Dependent Claim
44 words
The programmed computer system of claim 8, wherein said means for compiling includes means for arranging said assembled code segment such that said conditional paths are organized in said assembled code segment from most likely to be taken to least likely to be taken.
Claim 16
Dependent Claim
53 words
The programmed computer system of claim 8, wherein said conditional code segment comprises an outer conditional code segment, said outer conditional code segment including at least one inner conditional code segment, and wherein said programmed computer system further comprises means for repeating said associating and said compiling for each inner conditional code segment.
Claim 17
Dependent Claim
85 words
A programmed computer having a memory, said memory having a conditional code segment of a compilable high-level language disposed therein, said conditional code segment comprising: at least two associated conditional paths; and at least two probability compiler directives, each probability compiler directive being associated with a different one of said at least two conditional paths, and each probability compiler directive indicating an approximate probability for satisfying a test condition of the associated conditional path when said conditional code segment is executed by said programmed computer.
Claim 18
Dependent Claim
85 words
A programmed computer having a memory, said memory having a conditional code segment of a compilable high-level language disposed therein, said conditional code segment comprising: at least two associated conditional paths; and at least two probability compiler directives, each probability compiler directive being associated with a different one of said at least two conditional paths, and each probability compiler directive indicating an approximate probability for satisfying a test condition of the associated conditional path when said conditional code segment is executed by said programmed computer.
Claim 19
Dependent Claim
30 words
The programmed computer of claim 15, wherein said conditional code segment comprises one of an IF statement, an ELSIF statement, an ELSE statement, a CASE statement, and a SELECT statement.
Claim 20
Dependent Claim
43 words
The programmed computer of claim 15, wherein said approximate probability indicated within each probability compiler directive comprises a floating-point number having a value x, wherein 0.0<×<1.0, and a sum of floating-point numbers assigned to said at least two probability compiler directives equals 1.0.
Claim 21
Dependent Claim
18 words
The programmed computer of claim 15, wherein said approximate probability indication of each probability compiler directive is modifiable.