Managing wasted active power in processors based on loop iterations and number of instructions executed since last loop
First Claim
Patent Images
1. A method comprising:
- counting a number of times a processor has performed a loop, wherein saidcounting the number of times the processor has performed the loop includes;
(a) generating a signature for the loop, wherein said generating the signature comprises using a function including evaluating the function with instructions of the loop; and
(b) using the signature to determine that the loop has been performed during said counting;
determining whether the number of times the processor has performed the loop is greater than one or more values; and
imposing a limit on a power of the processor if the number of times the processor has performed the loop is greater than at least one of the one or more values;
reducing the limit imposed on the power of the processor upon determining that a number of instructions executed since a last loop indication instruction is greater than a value.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods of managing wasted active power of processors in computer systems and other electronic devices are disclosed. In one aspect, a method may include counting a number of times that a processor has performed an instruction loop. Then, a determination may be made whether the number of times that the processor has performed the loop is greater than one or more thresholds or other given values. Next, a limit may be imposed on the power of the processor if the number of times that the processor has performed the loop is greater than at least one of the thresholds or given values. Logic to perform such methods is also disclosed, as are systems suitable for incorporating such logic.
42 Citations
26 Claims
-
1. A method comprising:
-
counting a number of times a processor has performed a loop, wherein said counting the number of times the processor has performed the loop includes; (a) generating a signature for the loop, wherein said generating the signature comprises using a function including evaluating the function with instructions of the loop; and (b) using the signature to determine that the loop has been performed during said counting; determining whether the number of times the processor has performed the loop is greater than one or more values; and imposing a limit on a power of the processor if the number of times the processor has performed the loop is greater than at least one of the one or more values; reducing the limit imposed on the power of the processor upon determining that a number of instructions executed since a last loop indication instruction is greater than a value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus comprising:
-
one or more cores of a processor; a counter to count a number of times the processor has performed a loop; logic to impose a limit on power of the processor if the number of times the processor has performed the loop is greater than one or more values; a second counter to keep a second count of a number of instructions in the loop; and logic to condition the imposing of the limit on the power of the processor on the second count of the number of instructions in the loop being less than one or more values, where at least one of the counter, the second counter, the logic to impose the limit on the power of the processor, and the one or more cores comprises circuitry of the processor. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. An apparatus comprising:
-
a power management logic, the power management logic including; a counter to count a number of times a processor has performed a loop; logic to impose a limit on power of the processor upon determining that the number of times the processor has performed the loop is greater than one or more thresholds; and logic to remove the limit imposed on the power of the processor if a number of instructions executed since a last loop indication instruction is greater than a value, where the power management logic comprises circuitry. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. An article of manufacture comprising:
-
a machine-accessible medium having stored thereon instructions that if executed result in a machine performing operations including, counting a number of times a processor has performed a loop, wherein said counting the number of times the processor has performed the loop includes (a) generating a signature for the loop using a function with a property that when outputs generated using the function are different then inputs to the function are different, and (b) using the signature to determine that the loop has been performed during said counting, determining whether the number of times the processor has performed the loop is greater than one or more values, imposing a limit on a power of the processor if the number of times the processor has performed the loop is greater than at least one of the one or more values, determining whether a number of instructions executed since a last loop indication instruction is greater than a value, and if the number of instructions is greater than the value, removing the limit imposed on the power of the processor, and wherein the medium comprises at least one of a floppy diskette, an optical storage medium, an optical disk, a CD-ROM, a magnetic disk, a magneto-optical disk, a read only memory (ROM), a programmable ROM (PROM), an erasable-and-programmable ROM (EPROM), an electrically-erasable-and-programmable ROM (EEPROM), a random access memory (RAM), a static-RAM (SRAM), a dynamic-RAM (DRAM), a memory, and a Flash memory.
-
-
26. An apparatus comprising:
-
a functional unit of a processor, the functional unit including circuitry; a counter to count a number of times the processor has performed a loop indicated by a hint instruction, where the apparatus is to identify a loop by a number of instructions counted between hint instructions; logic to impose a limit on power of the processor if the number of times the processor has performed the loop is greater than one or more values.
-
Specification