IP Library Granted Patent US 8,468,275
Granted Patent B2
US 8,468,275 · App. 12/684,496 · Granted Jun 18, 2013

Hardware support for software controlled fast reconfiguration of performance counters

Inventors: Valentina Salapura (Yorktown Heights, NY); Robert W. Wisniewski (Yorktown Heights, NY)
Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,468,275
App. No.
12/684,496
Granted
Jun 18, 2013
Kind
B2
Abstract

Hardware support for software controlled reconfiguration of performance counters may include a plurality of performance counters collecting one or more counts of one or more selected activities. A storage element stores data value representing a time interval, and a timer element reads the data value and detects expiration of the time interval based on the data value and generates a signal. A plurality of configuration registers stores a set of performance counter configurations. A state machine receives the signal and selects a configuration register from the plurality of configuration registers for reconfiguring the one or more performance counters.

Claims (40)

1. A device for providing hardware support for reconfiguring performance counters in a computer system, comprising:

a plurality of performance counters operable to collect one or more counts of one or more selected activities;

a storage element operable to store data value representing time interval;

a timer element operable to read the data value and detect expiration of the time interval based on the data value, the timer element further operable to generate a signal;

a plurality of configuration registers operable to store a set of performance counter configurations;

a state machine operable to receive the signal and select a configuration register from the plurality of configuration registers for reconfiguring the one or more performance counters; and

a first multiplexer connected to the state machine and the plurality of registers, wherein the state machine selects the configuration register using the first multiplexer.

2. The device of claim 1 , further including a second multiplexer connected to the first multiplexer, the second multiplexer selecting a set of activities to pass to the one or more performance counters based on configuration setting of the selected configuration register in the first multiplexer.

3. The device of claim 1 , wherein the storage element is a register.

4. The device of claim 1 , wherein the storage element is a memory location.

5. The device of claim 1 , further including a second storage element storing a value indicating the number of times to perform reconfiguring of the one or more performance counters.

6. The device of claim 5 , wherein the value is programmable by software.

7. The device of claim 1 , further including a third storage element storing a value indicating whether to clear one or more of the plurality of performance counters.

8. The device of claim 7 , wherein the value includes an on or off bit.

9. The device of claim 7 , wherein the value includes a bit mask.

10. The device of claim 1 , wherein the plurality of configuration registers is programmable by software.

11. The device of claim 1 , wherein the time interval is programmable by software.

12. A device for providing hardware support for reconfiguring performance counters in a computer system, comprising:

a plurality of performance counters operable to collect one or more counts of one or more selected activities;

a storage element operable to store data value representing time interval;

a timer element operable to read the data value and detect expiration of the time interval based on the data value, the timer element further operable to generate a signal;

a plurality of configuration registers operable to store a set of performance counter configurations;

a state machine operable to receive the signal and select a configuration register from the plurality of configuration registers for reconfiguring the one or more performance counters; and

a second storage element storing an on or off bit indicating whether to perform reconfiguring.

13. The device of claim 12 , wherein the on or off bit is programmable by software.

14. A hardware support method for software controlled reconfiguration of performance counters, comprising:

collecting by a performance counter a count of a selected activity;

selecting a configuration register using a first multiplexer among a plurality of configuration registers specifying which hardware related activities to count;

a timer processing element obtaining a time interval value; and

in response to detecting expiration of the time interval value, a state machine switching to the selected configuration register to reconfigure the selected activity tracked by the performance counter.

15. The method of claim 14 , wherein the time interval value is programmed by software.

16. The method of claim 14 , wherein the plurality of configuration registers is programmed by software.

17. A non-transitory computer readable storage medium storing a program of instructions executable by a machine to perform a hardware support method for software controlled reconfiguration of performance counters, comprising:

collecting by a performance counter a count of a selected activity;

selecting a configuration register among a plurality of configuration registers specifying which hardware related activities to count;

identifying an on or off bit indicating whether to perform reconfiguring of the performance counter;

a timer processing element obtaining a time interval value; and

in response to detecting expiration of the time interval value and based on the on or off bit, a state machine switching to the selected configuration register to reconfigure the selected activity tracked by the performance counter.

18. The computer readable storage medium of claim 17 , further including setting the time interval value.

19. The computer readable storage medium of claim 17 , further including writing to the plurality of configuration registers for setting a plurality of configurations specifying selected performance counters for collecting counts of selected activities.

Assignments (2)
CONFIRMATORY LICENSE Recorded Aug 13, 2010
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: U.S. DEPARTMENT OF ENERGY
Reel/Frame 024832/0376 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2010
From: SALAPURA, VALENTINA; WISNIEWSKI, ROBERT W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023755/0009 →
Continuity (1)
Related Publication 20110173431A1 · Jul 14, 2011